{
  "cells": [
    {
      "cell_type": "code",
      "execution_count": null,
      "metadata": {
        "id": "9N8l6khHWzXw"
      },
      "outputs": [],
      "source": [
        "# Licensed under the Apache License, Version 2.0 (the \"License\");\n",
        "# you may not use this file except in compliance with the License.\n",
        "# You may obtain a copy of the License at\n",
        "#\n",
        "# https://www.apache.org/licenses/LICENSE-2.0\n",
        "#\n",
        "# Unless required by applicable law or agreed to in writing, software\n",
        "# distributed under the License is distributed on an \"AS IS\" BASIS,\n",
        "# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n",
        "# See the License for the specific language governing permissions and\n",
        "# limitations under the License"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "xeupLdNyL1CN"
      },
      "source": [
        "# Imports and Functions"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": null,
      "metadata": {
        "id": "Eld3ZfsVt23o"
      },
      "outputs": [],
      "source": [
        "import numpy as np\n",
        "from scipy.stats import special_ortho_group\n",
        "from scipy.spatial.transform import Rotation\n",
        "from scipy.linalg import svd\n",
        "import matplotlib.pyplot as plt\n",
        "\n",
        "plt.style.use('seaborn-whitegrid')\n",
        "FIGURE_SCALE = 1.0\n",
        "FONT_SIZE = 20\n",
        "plt.rcParams.update({\n",
        "    'figure.figsize': np.array((8, 6)) * FIGURE_SCALE,\n",
        "    'axes.labelsize': FONT_SIZE,\n",
        "    'axes.titlesize': FONT_SIZE,\n",
        "    'xtick.labelsize': FONT_SIZE,\n",
        "    'ytick.labelsize': FONT_SIZE,\n",
        "    'legend.fontsize': FONT_SIZE,\n",
        "    'lines.linewidth': 3,\n",
        "    'lines.markersize': 10,\n",
        "})"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": null,
      "metadata": {
        "id": "vWiwuBnqtLbE"
      },
      "outputs": [],
      "source": [
        "def SO3_via_svd(A):\n",
        "  \"\"\"Map 3x3 matrix onto SO(3) via SVD.\"\"\"\n",
        "  u, s, vt = np.linalg.svd(A)\n",
        "  s_SO3 = [1, 1, np.sign(np.linalg.det(np.matmul(u, vt)))]\n",
        "  return np.matmul(np.matmul(u, np.diag(s_SO3)), vt)"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": null,
      "metadata": {
        "id": "xzM585NgvD4M"
      },
      "outputs": [],
      "source": [
        "def SO3_via_gramschmidt(A):\n",
        "  \"\"\"Map 3x3 matrix on SO(3) via GS, ignores last column.\"\"\"\n",
        "  x_normalized = A[:, 0] / np.linalg.norm(A[:, 0])\n",
        "  z = np.cross(x_normalized, A[:, 1])\n",
        "  z_normalized = z / np.linalg.norm(z)\n",
        "  y_normalized = np.cross(z_normalized, x_normalized)\n",
        "  return np.stack([x_normalized, y_normalized, z_normalized], axis=1)"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": null,
      "metadata": {
        "id": "WFpPiUMajlz1"
      },
      "outputs": [],
      "source": [
        "def rotate_from_z(v):\n",
        "  \"\"\"Construct a rotation matrix R such that R * [0,0,||v||]^T = v.\n",
        "\n",
        "  Input v is shape (3,), output shape is 3x3 \"\"\"\n",
        "  vn = v / np.linalg.norm(v)\n",
        "  theta = np.arccos(vn[2])\n",
        "  phi = np.arctan2(vn[1], vn[0])\n",
        "  r = Rotation.from_euler('zyz', [0, theta, phi])\n",
        "  R = np.squeeze(r.as_matrix()) # Maps Z to vn\n",
        "  return R\n",
        "\n",
        "def perturb_rotation_matrix(R, kappa):\n",
        "  \"\"\"Perturb a random rotation matrix with noise.\n",
        "\n",
        "  Noise is random small rotation applied to each of the three\n",
        "  column vectors of R. Angle of rotation is sampled from the\n",
        "  von-Mises distribution on the circle (with uniform random azimuth).\n",
        "\n",
        "  The von-Mises distribution is analagous to Gaussian distribution on the circle.\n",
        "  Note, the concentration parameter kappa is inversely related to variance,\n",
        "  so higher kappa means less variance, less noise applied. Good ranges for\n",
        "  kappa are 64 (high noise) up to 512 (low noise).\n",
        "  \"\"\"\n",
        "  R_perturb = []\n",
        "  theta = np.random.vonmises(mu=0.0, kappa=kappa, size=(3,))\n",
        "  phi = np.random.uniform(low=0.0, high=np.pi*2.0, size=(3,))\n",
        "  for i in range(3):\n",
        "    v = R[:, i]\n",
        "    R_z_to_v = rotate_from_z(v)\n",
        "    r_noise_z = np.squeeze(Rotation.from_euler('zyz', [0, theta[i], phi[i]]).as_matrix())\n",
        "\n",
        "    v_perturb = np.matmul(R_z_to_v, np.matmul(r_noise_z, np.array([0,0,1])))\n",
        "    R_perturb.append(v_perturb)\n",
        "\n",
        "  R_perturb = np.stack(R_perturb, axis=-1)\n",
        "  return R_perturb\n",
        "\n",
        "\n",
        "def sigma_to_kappa(sigma):\n",
        "  return ((0.5 - sigma) * 1024) + 64\n"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": null,
      "metadata": {
        "id": "k8iUxM4aurzr"
      },
      "outputs": [],
      "source": [
        "# We create a ground truth special orthogonal matrix and perturb it with\n",
        "# additive noise. We then see which orthogonalization process (SVD or GS) is\n",
        "# better at recovering the ground truth matrix.\n",
        "\n",
        "\n",
        "def run_expt(sigmas, num_trials, noise_type='gaussian'):\n",
        "  # Always use identity as ground truth, or pick random matrix.\n",
        "  # Nothing should change if we pick random (can verify by setting to True) since\n",
        "  # SVD and Gram-Schmidt are both Equivariant to rotations.\n",
        "  pick_random_ground_truth=False\n",
        "\n",
        "  all_errs_svd = []\n",
        "  all_errs_gs = []\n",
        "  all_geo_errs_svd = []\n",
        "  all_geo_errs_gs = []\n",
        "  all_noise_norms = []\n",
        "  all_noise_sq_norms = []\n",
        "\n",
        "  for sig in sigmas:\n",
        "    svd_errors = np.zeros(num_trials)\n",
        "    gs_errors = np.zeros(num_trials)\n",
        "    svd_geo_errors = np.zeros(num_trials)\n",
        "    gs_geo_errors = np.zeros(num_trials)\n",
        "    noise_norms = np.zeros(num_trials)\n",
        "    noise_sq_norms = np.zeros(num_trials)\n",
        "\n",
        "    for t in range(num_trials):\n",
        "      if pick_random_ground_truth:\n",
        "        A = special_ortho_group.rvs(3)  # Pick a random ground truth matrix\n",
        "      else:\n",
        "        A = np.eye(3)  # Our ground truth matrix in SO(3)\n",
        "\n",
        "      N = None\n",
        "      if noise_type == 'gaussian':\n",
        "        N = np.random.standard_normal(size=(3,3)) * sig\n",
        "      if noise_type == 'uniform':\n",
        "        N = np.random.uniform(-1, 1, (3, 3)) * sig\n",
        "      if noise_type == 'rademacher':\n",
        "        N = np.sign(np.random.uniform(-1, 1, (3, 3))) * sig\n",
        "      if noise_type == 'rotation':\n",
        "        A_perturb = perturb_rotation_matrix(A, kappa=sigma_to_kappa(sig))\n",
        "        N = A_perturb - A\n",
        "      if N is None:\n",
        "        print ('Error: unknown noise_type: %s', noise_type)\n",
        "        return\n",
        "\n",
        "      AplusN = A + N  # Ground-truth plus noise\n",
        "      noise_norm = np.linalg.norm(N)\n",
        "      noise_norm_sq = noise_norm**2\n",
        "\n",
        "      # Compute SVD result and error.\n",
        "      res_svd = SO3_via_svd(AplusN)\n",
        "      error_svd = np.linalg.norm(res_svd - A, ord='fro')**2\n",
        "      error_geodesic_svd = np.arccos(\n",
        "          (np.trace(np.matmul(np.transpose(res_svd), A))-1.0)/2.0);\n",
        "\n",
        "      # Compute GS result and error.\n",
        "      res_gs = SO3_via_gramschmidt(AplusN)\n",
        "      error_gs = np.linalg.norm(res_gs - A, ord='fro')**2\n",
        "      error_geodesic_gs = np.arccos(\n",
        "          (np.trace(np.matmul(np.transpose(res_gs), A))-1.0)/2.0);\n",
        "\n",
        "      svd_errors[t] = error_svd\n",
        "      gs_errors[t] = error_gs\n",
        "      svd_geo_errors[t] = error_geodesic_svd\n",
        "      gs_geo_errors[t] = error_geodesic_gs\n",
        "      noise_norms[t] = noise_norm\n",
        "      noise_sq_norms[t] = noise_norm_sq\n",
        "\n",
        "    all_errs_svd.append(svd_errors)\n",
        "    all_errs_gs.append(gs_errors)\n",
        "    all_geo_errs_svd.append(svd_geo_errors)\n",
        "    all_geo_errs_gs.append(gs_geo_errors)\n",
        "    all_noise_norms.append(noise_norms)\n",
        "    all_noise_sq_norms.append(noise_sq_norms)\n",
        "    print('finished sigma = %f / kappa = %f' % (sig, sigma_to_kappa(sig)))\n",
        "\n",
        "  return [np.array(x) for x in (\n",
        "      all_errs_svd, all_errs_gs,\n",
        "      all_geo_errs_svd, all_geo_errs_gs,\n",
        "      all_noise_norms, all_noise_sq_norms)]"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": null,
      "metadata": {
        "id": "T4qHA2zSPRP0"
      },
      "outputs": [],
      "source": [
        "boxprops = dict(linewidth=2)\n",
        "medianprops = dict(linewidth=2)\n",
        "whiskerprops = dict(linewidth=2)\n",
        "capprops = dict(linewidth=2)\n",
        "\n",
        "def make_diff_plot(svd_errs, gs_errs, xvalues, title='', ytitle='', xtitle=''):\n",
        "  plt.figure(figsize=(8,6))\n",
        "  plt.title(title, fontsize=16)\n",
        "  diff = gs_errs - svd_errs\n",
        "  step_size = np.abs(xvalues[1] - xvalues[0])\n",
        "  plt.boxplot(diff.T, positions=xvalues, widths=step_size/2, whis=[5, 95],\n",
        "              boxprops=boxprops, medianprops=medianprops, whiskerprops=whiskerprops, capprops=capprops,\n",
        "              showmeans=False, meanline=True, showfliers=False)\n",
        "  plt.plot(xvalues, np.max(diff, axis=1), 'kx', markeredgewidth=2)\n",
        "  plt.plot(xvalues, np.min(diff, axis=1), 'kx', markeredgewidth=2)\n",
        "  xlim = [np.min(xvalues) - (step_size / 3), np.max(xvalues) + (step_size / 3)]\n",
        "  plt.xlim(xlim)\n",
        "  plt.plot(xlim, [0, 0], 'k--', linewidth=1)\n",
        "  plt.xlabel(xtitle, fontsize=16)\n",
        "  plt.ylabel(ytitle, fontsize=16)\n",
        "  plt.tight_layout()"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "SyRO-H2ugSlb"
      },
      "source": [
        "# Global Params"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": null,
      "metadata": {
        "id": "f0uI1M6kgR4n"
      },
      "outputs": [],
      "source": [
        "num_trials = 100000  # Num trials at each sigma\n",
        "sigmas = np.linspace(0.125, 0.5, 4)"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "CCXPBdtJMGxE"
      },
      "source": [
        "# Gaussian Noise\n",
        "Here we generate a noise matrix with iid Gaussian entries drawn from\n",
        "$\\sigma N(0,1)$.\n",
        "\n",
        "The \"Frobenius Error Diff\" shows the distributions of the error differences\n",
        "$\\|A - \\textrm{GS}(\\tilde A)\\|_F^2 - \\|A - \\textrm{SVD}(\\tilde A)\\|_F^2$ for\n",
        "different values of $\\sigma$. The \"Geodesic Error Diff\" plot shows the\n",
        "analagous data, but in terms of the geodesic error."
      ]
    },
    {
      "cell_type": "code",
      "execution_count": null,
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "2Z0fwaiOMJkx",
        "outputId": "22825c88-afa9-49d4-eafa-cdde1d4d1820"
      },
      "outputs": [
        {
          "name": "stdout",
          "output_type": "stream",
          "text": [
            "finished sigma = 0.125000 / kappa = 448.000000\n",
            "finished sigma = 0.250000 / kappa = 320.000000\n",
            "finished sigma = 0.375000 / kappa = 192.000000\n",
            "finished sigma = 0.500000 / kappa = 64.000000\n"
          ]
        }
      ],
      "source": [
        "(all_errs_svd, all_errs_gs,\n",
        " all_geo_errs_svd, all_geo_errs_gs,\n",
        " all_noise_norms, all_noise_sq_norms\n",
        " ) = run_expt(sigmas, num_trials, noise_type='gaussian')"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": null,
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 311
        },
        "id": "XMqZrt8PfR9h",
        "outputId": "eb452296-ae44-4651-a673-08b80669be6b"
      },
      "outputs": [
        {
          "data": {
            "text/plain": [
              "\u003cmatplotlib.legend.Legend at 0x7fe22e7a8cc0\u003e"
            ]
          },
          "execution_count": 9,
          "metadata": {
            "tags": []
          },
          "output_type": "execute_result"
        },
        {
          "data": {
            "image/png": "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\n",
            "text/plain": [
              "\u003cFigure size 432x288 with 1 Axes\u003e"
            ]
          },
          "metadata": {
            "needs_background": "light",
            "tags": []
          },
          "output_type": "display_data"
        }
      ],
      "source": [
        "plt.plot(sigmas,\n",
        "         3*sigmas**2,\n",
        "         '--b',\n",
        "         label='3 $\\\\sigma^2$')\n",
        "plt.errorbar(sigmas,\n",
        "             all_errs_svd.mean(axis=1),\n",
        "             color='b',\n",
        "             label='E[$\\\\|\\\\|\\\\mathrm{SVD}^+(M) - R\\\\|\\\\|_F^2]$')\n",
        "\n",
        "plt.plot(sigmas, 6*sigmas**2,\n",
        "         '--r',\n",
        "         label='6 $\\\\sigma^2$')\n",
        "plt.errorbar(sigmas,\n",
        "             all_errs_gs.mean(axis=1),\n",
        "             color='r',\n",
        "             label='E[$\\\\|\\\\|\\\\mathrm{GS}^+(M) - R\\\\|\\\\|_F^2$]')\n",
        "\n",
        "plt.xlabel('$\\\\sigma$')\n",
        "plt.legend(loc='upper left')"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": null,
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 865
        },
        "id": "N2KKnV5MLycf",
        "outputId": "643a8244-2227-40fb-c0ab-1cf86a98f511"
      },
      "outputs": [
        {
          "data": {
            "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjgAAAGoCAYAAABL+58oAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+WH4yJAAAgAElEQVR4nO3deXxkZZ3v8U/EFRCGJXFX8Er/6Nh6lXYQQWdodERoN5B4R2UUV5TucUPF5bKMMuogOqKkx1ERxBmdMQyLI6Cj14CCKNKumPhDcGNRErplEWjANvePcwqrq6uSSqeSVJ3+vF+vvE5ytvqFHKq+/ZzneU7f1NQUkiRJVXKfxS5AkiSp0ww4kiSpcgw4kiSpcgw4kiSpcgw4kiSpcgw4kiSpcu672AVI6i4RcR/giPLrCcD2wCTwdeAjmfnDRSuuhYg4A3h6Zj5unl/nBOB44LjMfF+T7b8CTsjMM9o83xHA6cCjMvO6TtUpyRYcSXUiYhvgbODDwLnAfkAArwF2Ay6LiAMXrcDW3gTss0CvtRE4JiIe0YFz/SfwMOCGDpxLUh1bcCTVewtwMLBPZn6/bv0vIuLrwMXAkcBXF6O4VjLzlgV8ucuAvwD+CTh8LifKzDuBOztRlKRNGXAk1Xsj8B8N4QaAzLw7Ip6RmX+sXx8Rr6VoQVkC3AJcArwlM39Vbj+DhttHEfG3wBeA3TPzVxHxWIpWo/2ABwPXUNwO+0y5/0zbN3mNiHgC8EHgGRTvc1cB78vM/yq37wb8EnhB+XUI8Cfgy8BRmXnHNP+NNgJvBr4WEadm5nda7RgRT6IIQvuWdfwIOD4zv1puP4K6W1QRsVe5/3Lg/sA48N7M/O9y//sAbwdeDjwW+B3wCeCkzHRaeqmOt6gkARARjwEeBVzaap8m4eZZwCeBTwGPA54NPAT4j1m+/L8BOwB/A+wJrAE+HRFPb3N7fU33oQgq9wWeBjye4nbbf0TEsobd3w98H/hLitDyCuComYrNzP8HfAk4JSL6mu0TEQ8DRoE7KILWXsCVwJfL4NO4f195zkmKIPe/gQuBc8pABnAs8D5gmKJ/1Hsp+gS9faaapa2NLTiSah5WLn8zi2O+AzwhM6+sHRsRnwROj4gdZ3Hr6EkULRs/Kn9eExFXAFe3ub3RAcDNmbkOICJOBP5vuf7Kuv0uy8zh8vtrIuLdwN5t1vw24KfA3wFnNtn+SuCBwCsy89ayjtcBBwKvL7/q9QOPAM7JzPFy3XER8VVgXUTcDzgaWJOZa8rtV0fE44G3RcTJmfmnNmuXKs+AI6mm9uF4T/3KiHgjRUtHvYMy81vA7cDTI+IzwO7Ag/jz+8pOFLes2vFl4ISIeAhwPnBpZl4+i+33ysw/RcROwIci4illHX3ANsDODbt/r+HnyXL/GWXm1RFxCvCBiDg7M//QsMtTgJ/Wwk1dbWspWnMaTQKXU4S3x1P0c7o8My8FiIgnUtye+0bDcRdRBJ+HA47EkkreopJUc2253L1h/ZkULShPAlYC21GEBSg+WP+FYgj5geU+x2zBa78C+AeKW1DfACYj4r3l7aZ2tt+rvNV2MTAAvIqiP8uTgLubvG5jX5spijDUrhMp/lu8q8m2HYBbm6y/rdy2ibIPzXOAfwVeCnwbuCEiVtedD+A/I+IPtS/gi+X6h86ibqnybMGRBEBm/jYiEng+RZ+a2vqbgZsBIuKPDYe9BPhaZr67tqJJ6GgWGrZveO07gZOAk8rh16+juKV0A/CJmbY3nPv5wLbAizPzhrKmnSg67XZUZt4aEe8BTo2ITzdsvoViaH2jHWnRspWZv6f4vf5vROxB0S/o4xFxNXB9udtRwLeaHH59k3XSVssWHEn1PgQ8NyIOarF9z4af7w/cVPuh7Cj70vLHWqi5lc1v+zy17pidIuLwcg4eMvP6zDyeoq/M42fa3qTGWpC5qW7dyxpq6qTTKUY7fahh/RUU9f9FbUVE3JeiQ3PjrTEi4uER8eLaz5n588xcRfHf7/HAz8rvH56ZV9e+gN8DfyhDoKSSLTiS7pWZp0XEvsDZEXESxaR/NwOPAQ6j6Bj7deAH5SHfBQ6JiP0oPmiPpxgK/RSKvjkTwFrgjWVfni9T3Gaqn5Svj6IV5ukR8XGKWzh/RTHB4Pva2N7ou+XymIj4HMWts4OBXwBPLvvxdEzZr+bNFLfF6vsvnUbREfnzEfFOij5Ox1DMoXNqk1PtCHwhIgaBz1PcUnsBRWvXJZl5T9nn55iIuJaiFefhFMPn/whsNqJM2prZgiNpE5n5aop5Vvaj6O9yFcWcNY8C/jYz/6ZudNT/pegY+9Xy6zvAGygmw/sUxbDxz1P0Kzke+CHFkOl31b3eeooQsidFv5OfUQSBt2XmWTNtb1L/JcBxwCrgx2UNf0cxtPpZNA8Xc5KZ3wRGgPvVrZsAVpTrLqP47/Ro4FmZ+bMm5xinmI/nYIqh6z8p635pZtZC2/EUHb5PoPi7nFvu94JO/05Sr+ubmnJuKEmSVC224EiSpMox4EiSpMox4EiSpMox4EiSpMpxmHgTa9eutee1JEk9Yvny5ZvNcWXAaWH58uWLXcKsjI+Ps3Tp0sUuQ13G60KteG2omV68LtauXdt0vbeoJElS5RhwJElS5RhwJElS5RhwJElS5RhwJElS5RhwJElS5RhwJElS5RhwJElS5RhwJEnaCg0PDzMxMdFy+8TEBMPDwwtYUWcZcCSp4qr+QabZGx4eZvXq1axYsaLptTExMcGKFStYvXp1z14bBhxJqrCt4YNMszc0NMTg4CBjY2ObXRu1a2JsbIzBwUGGhoYWsdItZ8CRpArbGj7INHsDAwOMjo5udm2sW7duk2tidHSUgYGBxS53ixhwJKnCtoYPMm2Zxmtj2bJlvOAFL6jMNeHTxCWp4mofZLVAs2zZMjZu3Mj69esr8UGmLVe7NpYtW8bk5CQA/f39lbgmbMGRpK1A7YOsv7+fyclJ1q9fX5kPMqkZA44kSVupWj+syclJ+vv72XnnnZmcnGzZKb2XGHAkaStQ5Q8ybZnGTuZXXnkl5513XstO6b3GgCNVhHOdqJWqf5Bp9hqvidqtyl122aVpp/Re1NWdjCNiqo3dds/MX83hHDtl5s2zKkzqMrW5TtasWdO0T0X9mxnAqlWrFqNMLYJWH2Tr1q3bpOPxihUr7I+zFRkZGWk5WqqxU/rIyEhPvmd0dcABppuU4QPAjsBkG+cZA45vse322RYldZuhoSHWrFnT9IPKuU62blvDB5lmr/Z3Hhoaahpqa9dGL18TXR1wMvOsZusj4oXA44AjMrOdgDLZ6lxSFTR+UNVCzrp16zjssMMqM6+FZm9r+CDTlpnp7z0wMNDT10RXB5xmIuLBwMeBb2XmZxe7HqlbONeJWqn6B5nUTM8FHOBY4OHAwbM9MCL6gG3bbPWRek6VJ+2SpNnoqVFUETEArALOzMyfzOLQXSPiTOA24A8RcWtEnBkRj5iXQiVJ0qLqtRacdwAPBP5xlscNAt8HDqf4nZ8HvBzYPyL2ysybGg8YHx+fY6kLa8OGDT1Xszpv3bp1HHHEEUxOTrLzzjszNTXF5OQk++67L2eccQa77LLLYpeoLuF7hpqp0nXRMwEnInYC3gB8OTOvnsWhB1F0Ml5bt+6siLgWeA9wNPCuxoOWLl06l3IX3Pj4eM/VrM6amJjgsMMO45prrrm3z81VV13FkUceydjYGEceeaS3qnQv3zPUTC9eF2vXrm26vpduUb0U2BaYVcfizPxKQ7ipWVMunzXXwqTFtjVM2iVJs9FLAWcIuAu4sEPnmwSmgB06dD5p0bQz10kt5IyMjCxipZK0MHriFlVEbA/sC1yamXfO4rgnlMddmJm/adi8B9AHNK6Xeo5znUjSpnqlBeeJwP2AK6fbKSL2jIjd61YtAz4BHNdk91q/m7M7UqG0yFatWjVt/xrnOpG0NemJFhxgSbn81Qz7jQMJ7Fn+PAK8Cnh1ROwKXABsAxxK0ffm68CnOl2sJElaXL3SgrNTubxtNgdl5h8phoS/nSIkfQz4MNBfrju43EeSJFVIT7TgZOY/A//cxn59TdZtAE4uvyRJ0lagV1pwJEmS2mbAkSRJlWPAkSRJlWPAkSRJlWPAkSRJlWPAkSRJlWPAkSRJlWPAkSRJlWPAkSRJlWPAkSRJlWPAkSRJlWPAkSRJlWPAkSRJlWPAkSRJlWPAkSRJlWPAkSRJlWPAkSRJlWPAkSRJlWPAkSRJlWPAkSRJlWPAkSRJlWPAkSRJlWPAkSRJlWPAkSRJlWPAkSRJlWPAkSRJlWPAkSRJlWPAkSRJlWPAkSRJlWPAkSRJlWPAkSRJlWPAkSRJlWPAkSRJlWPAkSRJlWPAkSRJlXPfxS5gJhFxBvCKaXZ5S2Z+dIZz7AscC+wDPAi4CvgUcGpmTnWoVEmS1CW6PuDUOQqYbLL+h9MdFBEHABcC1wInAOuBFwAfA/4X8OaOVilJkhZdLwWcCzPzV1tw3BpgA/CMzPxtue5zEXEu8MaIOD0zf9SpIiVJ0uKrdB+ciHgqEMAX68JNzalAH3D4ghcmSZLmVc8FnIh4YES02/K0d7m8rMm275bLp869KkmS1E16KeCsiohfAncCd0XEdyLi4BmO2a1cXte4ITNvA24GHtvRKiVJ0qLrpT44BwLvB64Hngi8HfhyRLw0M/+jxTEPLpd3tNh+e90+mxgfH59DqQtvw4YNPVez5p/XhVrx2lAzVboueiHgfBj4AnBRZt5VrrsgIr5EMYLqwxHxxcz8UydfdOnSpZ083bwbHx/vuZo1/7wu1IrXhprpxeti7dq1Tdd3fcDJzJ8AP2myfiwiLgL+BlgK/LTJ4beWy+1anH77un0kSVJF9FIfnGZuLJc7tNj+i3L5yMYNEbEjsCPw83moS5IkLaKubsGJiB2A5wHrMvMrzXYpl9e2OMW3y+V+wGkN255RLi+ZU5GSJKnrdHsLzt3AMHBGROxavyEingX8JXB5Zl5XrtszInav7ZOZPwS+DwxFxCPrju0D3gLcA3x23n8LSZK0oLq6BSczN0TEm4AzgMsj4hPA74AnA28AbgGOrDtkHEhgz7p1RwGjwDcj4qMUQ8P/FjgAODYzr5nv30OSJC2sbm/BITM/SxFGrgbeTXGr6TDg34G9ylaa6Y7/LvBXwM+A9wL/CjwUeFVmnjiPpUuSpEXS1S04NZk5StEKM9N+fS3WXwHMNCmgJEmqiK5vwZEkSZotA44kSaocA44kSaocA44kSaocA44kSaocA44kSaocA44kSaocA44kSaocA44kSaocA44kSaocA44kSaocA44kSaocA44kSaocA44kSaocA44kSaocA44kSaocA44kSaocA44kSaocA44kSaocA44kSaocA44kSaocA44kST1u5cqV9PX1zflrcHBwzudYuXLlYv/nAKYJOBExHBE7ld9/JiIevHBlSZIkbbn7TrPttcCXgK8CrwCOAW5biKIkSVL7zj///Dmfo6+vD4Cpqak5n6sbTBdwLgEuiAiAPuB35ffNTGXmdOeSJElaMNOFkkOAIWAX4APA+4E/LERRkiRJczFdwHkO8IXMvD0iXg+clJneopIkSV1vulFUZwKPLL9/NPDA+S9HkiRp7qZrwfk18P8i4iqKPjjnRMTdLfadysxndrw6SZKkLTBdC86LgYuADcAUcNc0X62CjyRJ0oJr2YKTmT8EDgeIiF8CL87MdQtVmCRJ0pZqa2h3Zu4+34VIkiR1SsuAU/a92Scz15ffT2cqM1tOkiNJkrSQpmvBuRS4p/z+2xT9cCRJkrredH1wXln3/RELUo0kSVIHtNUHJyIeAfwV8FDgjxRDyL+ZmTfPY22SJElbZNqAExE7AJ+gGDLeOKT8roj4NPCOzLxznuojIvqB4ygeHfEQ4GaK52S9LzO/38bxM91a28mgJklStUzXyfj+wDeAhwNvBi4AriuPeRzwQuCtwJMjYkVm3tPqXFsqIgaAtRTPw/oX4EfAEuCNwIERsV9m/qCNU40Bx7fYdnsnapUkSd1juhacI4GHAcsz87d16+8Gfgz8OCI+T9EZ+e+Bj8xDfSdSPC7iRZl5dm1lRHwPOBd4F0Xr0kwmM/OseahPkiR1oZlmMv5AQ7jZRGZeDbwX+LtOF1a6AfgCcE7D+q9QjOp64jy9riRJ6mHTteA8Hhht4xz/A5zUmXI2lZkntNj0YIrnY906m/NFRB+wbWZ6W0qSpAqbrgVnR+CmNs5xKwv/pPHXl8t/b3P/XSPiTOA24A8RcWtEnFmODpMkSRUzXQtOH104uV9EHEQxqmotRcfjdgwC36d4ttZ9gecBLwf2j4i9MnOzIDc+Pt6ZghfIhg0beq5mzT+vC7XitaFWqnJdzDQPzpsiYqbbOdt3qpiZRMTLgU8DvwKel5ntPMX8IIpOxmvr1p0VEdcC7wGOpuisvImlS5fOveAFND4+3nM1a/55XagVrw210mvXxdq1a5uunyngbPbB38K8t/RExLEUHZqvAFZm5kQ7x2XmV1psWkMRcJ5F+7+nJEnqAdM9qmG6/jkLKiI+CrwJ+BLwksy8owOnnaQIZjt04FySJKmLtPWohsVUtty8CTgdeG1mbpzFsU8A9gUuzMzfNGzeg6KfUeN6SZLU47qmlaaZiFgB/APFPDivmSncRMSeEbF73aplFI+aOK7J7rXbUmc32SZJknpYt7fgnFwuvw4cGhHN9rmg7pbVOJDAnuXPI8CrgFdHxK4Uj5vYBjiUou/N14FPzU/pkiRpsXR7wNmrXA5Ps8/uFKOqNpOZf4yI5wGrKYLOc4A/AVcBbwdOycw/dqxaSZLUFdoKOBFxv/l4mOZMMrNvrvtn5gaKlqCTNz9CkiRVUbt9cG6JiEfNayWSJEkd0m7AuQJ49nwWIkma2cqVK+nr65vz1+Dg4JyOX7ly5WL/p5Cm1W4fnHOAYyJiCPgBxTOd6k1l5gc6WpkkSdIWajfgfLhcPo7mLTlTgAFHkubZ+eefP+dz9PUV3RWnprrucYNSx7QVcLppVmNJkqSZzGqYeERsQzED8A7AzcDVmfmn+ShMkiRpS7XVMhMR20TEScA64KfAZRST6t1UPkpBkiSpa7TbgnMC8Hrg48DlFJ2Md6R4ztM7I+LOzHSeGUmS1BXaDTiHA2/IzH9vWH9ORPwMeCdOpCdJkrpEu52HHw5c2mLbN4BHd6YcSZKkuWs34Ezy5wdYNloG3NSZciRJkuau3VtUZwGnlR2KvwPcStEHZz/gH4AvzE95kiRJs9duwHkn8FDgUw3rp4DPl9slSZK6QrsT/W0A/jYijgb2opgH5xbg+5l5wzzWJ0mSNGttBZyIuAj4P5l5PXD9vFYkSZI0R+12Mn4ExXOoJEmSul67fXDeDXw4Is6l+dPEycxvd7IwtTY8PMzQ0BADAwNNt09MTDAyMsKqVasWuDJJkrpDuwHnP8vl3uWy/hG0feXP23SqKLU2PDzM6tWrWbNmDaOjo5uFnImJCVasWMHY2BiAIUeSutzKlSu54IILFruMe9WeNr9YDj74YM4///w5n6fdgLNizq+kjhgaGmLNmjWMjY2xYsWKTUJOfbgZHBxkaGhokauVJM2km8JNN+jUf492A85jgZHM/ENHXlVbbGBggNHR0XuDTC3krFu3jsMOO+zecNOsdUeS1L2mpqZm3mmejY+Ps3Tp0kV7/U62HrUbcE6heCSDAacLNIacZcuWsXHjRtavX2+4kSSJ9kdRfQD4SEQ8bD6LUftqIae/v5/JyUnWr19Pf3+/4UaSJNpvwTkYeCRwbURMsvkoqqnMjI5WJkmStIXaDThXl1/qErUOxZOTk/T397Nx40YmJyc363gsSdLWqN1HNbxyvgtR+xpHS42OjnLVVVdx5JFHNh1dJUnS1qZlH5yI2DsiZpzbJiK2i4j3d7YstdIs3AwMDLDLLrswOjrK4ODgvSFnYmJiscvVFlq5ciV9fX1z/hocHJzzOVauXLnY/zkkadam62R8GbBL/YqIOL9JR+PtgWM6XZiaGxkZaTkUvNbxuBZyRkZGFrFSSY06FVzn+lWz2HUYnjWfprtF1Www+l8BD5qnWtSG2szErR7VUAs5Pqqht3ViFs/aB1k3zK2hghO6bcr/HppP7XYyVheZKbgMDAwYbqQu1g2hs0oTuknNtDsPjiRJUs8w4EiSpMrxFpUkSYvoyy95ECuX3A9O2HGxS2HxbloWpo7fgfOvuqcj55op4BwaEbfW/bwN8PyIqB9/vPh/EUmSpDozBZw1TdZ9pMm6xe8xJ0lSD3ruF+4E7rTzOXWjPz8/93NNF3B2n/vppa3TypUru2YIbDeMVjn44IM7MvS913kr4s86eStCaqZlwMnMXy9kIdOJiJ2B44EXAg8DbgIuAI7NzN+2cfy+wLHAPhTz+FwFfAo4NTMXPzKrcrol3HQL/3tIWmhd38k4Ih4EXATsCZwKXAHsAbwNOCAilmfm76c5/gDgQuBa4ARgPfAC4GPA/wLePI/lz6ib/qXvv7I7b7GbnBe7uRm6owWpW3gr4s86eStCaqbrAw5FAHkCsCoz7+0TFBE/As6haJl56zTHrwE2AM+oa+35XEScC7wxIk7PzB/NT+naWnXLrYjFvg0B3oqQtDh6YR6clwO3A6c1rD8PuA44PCKa/hMxIp4KBPDFJreyTqV4HMXhW1pYJ54r0y2tN1DcRvC5MpKkKujqFpyI2IHi1tS3MvOu+m2ZORURlwOHUnSI/kWTU+xdLi9rsu275fKpW1rfUTuOcv7xO2zp4ZVz/lWji11C1+iWWxGLfRsCvBUhaXG0HXAi4tHAusy8vfz52cDjgUsy83vzVN9jyuV1Lbb/plw+luYBZ7dWx2fmbRFxc3msNC/sf6JmvC7UjNdFh01NTc34tWTJkucuWbLk7iVLljyt/HnVkiVL/rRkyZKblyxZcs+SJUsOa+c8s/1asmTJvkuWLJlasmTJp1tsP7HcfkiL7Z8stz+9xfbrlixZckvj+iuuuGKKYm6fKWBqZGRkamRkZJN1Rx111CY/+8XUHnvsMTU2NrbJuv33339qbGxsav/9999k/djY2NQJJ5ywybrh4eGpiy66aJN1Q0NDU2NjY1ODg4P3ruvv758aGxvb7G/Q6u80NjY21d/ff++6wcHBqbGxsamhoaFN9r3oooumhoeHN1l3wgknzOl38mvzr278Oy3UtefX5l/d+Hda6Gtvsf8G3fb15Cc/eVZ/pyuuuGKq2Wd8XztN6OWtoAsz8/iIuA9wAzCSmX8fEW8CXpaZe09/ltkrh3dfCpyWma9psv1E4D3AoZl5TpPtnwReS9HB+JIm268DHpyZm/QEXbt27dTy5cs79FtMz1FUmi/33hrqghE76i5eG2qmV6+LtWvXsnz58s2av9rtZLwUOKP8fm+gH/ho+fO5FB1550PtMRHbtdi+fcN+W3J8q2MXxPnnnz/rlq0bb7yRwcFBAAYHB7nxxhv51re+tdm62Z7XcNM9OtGBvWau57HzuKRe1G4fnLuB+5XfHwj8PDOvKX++P8VopPnwS4qmqEe22P6YcvnzFttr/XI2Oz4idqR4jtb351LgYhgYGGB0dJQVK1YwNjbGsmXL2LhxI+vXr2dwcJDR0VEGBgYWu0xJkhZNuy04a4FjI+JFwFHAF+u2vRQY63RhAGWH5h8De0XEA+u3RcQ2wL7AtZn5m2bHA98ul/s12faMcrnZrateUAs5/f39TE5Osn79evr7+w03FbElLXvNvsbGxuZ8Dlv2JPWidgPOMcD+wAhFq8qHASJiiGKivRPno7jSacC2wJEN6w8HBoBP11ZExJ4Rce8ztDLzhxQtNEMR8ci6/fqAtwD3AJ+dv9IlSdJiaOsWVWb+AHhURPRn5mTdpkuAZZn5s3mprvAJ4GXAyRHxGIpHNTyeYvbinwAn1+07DiTF3Dk1RwGjwDcj4qPAzcDfAgdQPMvqGnrQxMQEK1asYHJykv7+fjZu3Mjk5CQrVqywFUeqsE4OTJjLsGQHJajbzWom44ZwQ2b+dp7DDZl5D/Bs4OPAiyg6O7+CouVm/8y8Y4bjvwv8FfAz4L3AvwIPBV6VmfPZ8jRvauFmbGyMwcFBrrzySs477zwGBwcZGxtjxYoVTExMLHaZkiQtmnaHif+JorNvS5m5TaeKWmwLOUx8thrDTa21Znx8nF122aXpNm29umEmY3Unrw01qtow8XZHUb2bzQPO9sA+FCOUPjS38tSukZGRlgGmcXTVyMgIq1atWsRqJUlaHO32wflgq20R8W5gWccq0rRqgWVoaKhp60wt5BhuJElbs048Tfw/KZ74rQWyatWqaW89DQwMGG4kaSvi5KCb60TAeXKHziNJktQRbd2iioj/abK6D9gJeBJwVieLkiRJ7evUkP0qdT5vt+Xl/hSPaqj/2ga4DvgHigdaSlpEw8PD004PMDExwfDw8AJWJEmLp91OxvvPcx2S5mB4eJjVq1ezZs2aptMD1E8vANhHS1LltQw4EbEv8N3M3Fh+P63M/PZM+0iaH0NDQ6xZs+beiR7rQ07j3ElDQ0OLXK0kzb/pWnAuoZjxd6L8vtXMP33ltspM9Cf1msY5kGohZ926dRx22GFO/ihpqzNdwFkBrK/7XlIXaww5y5YtY+PGjaxfv95wI2mr0zLgZObFzb6X1L1qIWfZsmVMThaPjuvv7zfcSNrqtPuoBiLiUGBviqHhjc98mMrMIztZmCRJ0pZqdx6cDwNvAW4H1rF5f5zeejKXVFG1DsWTk5P09/ezceNGJicnN+t4LElV124LzkuAY4CTM9MwI3WhZk+av+qqqzjyyCObjq6SpCprd6K/7YARw43UnZqFm4GBAXbZZRdGR0cZHBy8N+RMNxmgJFVFuwHn68A+81mIpC03MjLScih4reNxLeSMjIwsYqWStDDavUV1EvCxiNgNuAK4o3EHJ/qTFk9tZuKhoaGmt6BqIWdkZMRZjCVtFdoNOJeVy78sl/W3qpzoT+oCMwWXgYEBw42krUa7AceJ/iRJUs9o92GbTvQnSZJ6xmwm+tsNOAp4EvAQ4LnAjcDhmfmZealOkiRpC7Q1iioi9gkqYpYAABeASURBVAF+ArwMuAXYE7gf8CjglIh4zbxVKEmSNEvtDhM/GfgvYLfMHALuBsjMa4A3UsxyLEmS1BXaDThPBv4pM+9psu0bwOM6V5IkSdLctBtw1gO7tNj2cOAPnSlHkiRp7toNOJcCwxHxhLp1UxHxSOBDwP90vDJJkqQt1G7AeSvwAOCHEXETsC3wHeCXwK7A2+anPEmSpNlrdx6cG8rWm0OBvYEdKEZTXQ6cl5l3zV+JkiRJs9P2PDhlB+P/jIivUrTg/CEzb523yiRJkrZQWwEnIrYFPgj8H4pbUrX1vwX+DTjeVhxJktQt2m3B+TTwfODfge8BtwPbA8sp5sEZAF41HwVKkiTNVrsB53nAKzNzpGH9pyLiYuATGHAkSVKXaHcU1d3AD1ps+x7wx86UI0mSNHftBpx/Aw5vse3F5XZJkqSu0PIWVUS8u+7HdcBrI+IAivlvbgW2A54BPAb48HwWKUmSNBvT9cE5scm6RwBPb7L+w8BHO1KRJEnSHLUMOJnZ7u2reRURTweOp5hg8IHAtRRPNn9fZk77DKyIOAI4fZpdzsvMF3aoVEmS1CXanugPICIeQvFk8R2Am4HvZ+ZN81FY+Xovo+jfkxQh51bgucA7gGdExNMz809tnGoYuKjJ+us7VKokSeoi7U70tx1FS8ihbNoxeWNEnAm8vpzpuGMi4gHAv1C02Dw1M28pN30mIs4BXgg8B7igjdNdkZlndbI+SZLUvdq9DfVPFB2K30DRgvM4ikn+3kwxR85756G2hwJnAx+oCzc1tVDzxHl4XUmS1OPavUV1CPDazPxyw/ofRMTvgI8A7+pkYZn5a+CIFpt3LJezehZWRNwP2CYzN8yhNEmS1OXaDTi7Aj9tse37FK0tCyIi7k8xa/IdwLltHnZARBwFPAXoi4hfAKcCH83MqWYHjI+Pd6LcBbNhw4aeq1nzz+tCrXhtqJkqXRftBpzrgb8Eftlk29OBG9o5SUS0miyw3g2Z+Y0Wx98H+BSwFDg6M9t6XYq+Oh8BjgMeTfH8rI8ASyhuu21m6dKlbZ66O4yPj/dczZp/XhdqxWtDzfTidbF27dqm69sNOGcAn46IZfx5or8dgf2A1cBJbZ7nc23s81Vgs4ATEQ8CPk/RuXg4Mz/Sxrm+BhwE/DAzf1d3rs8BPwaOjIhTMvNn7RQvSZJ6Q7sB50RgW4pOxdsDU0AfcBvFbZ5mkwI2s1Mb+2w2Gisi+oEvAftQzH9zXDsvlpnX02QoeGbeGRGnA/8IPBMw4EiSVCFtBZxyrpl3RsRxQFDMg3NLsan94eGZefNsCyzn3vkWsDvFE83PmO05WrixXO7QofNJkqQu0e48OL8E9iv7vPxkfkva5HV3AL5C0W/m+Zl54SyPfyGwc2Z+ptnmcvmbuVUpSZK6Tbvz4NwC7DWfhbRwCvAk4CUzhZuI2DEi9oyInetWvwE4LSKe0bDvQ4BXU4zE+mqHa5YkSYus3T44pwAfjIjnAj+g6Huzicz8fCcLi4gnAq8AxoBtIuKwJrtNZubF5feHUMy2/C7gg+W6o4FvA+dHxJryXI+i6Bi9E/Ca+XzUhCRJWhztBpzTyuVgi+1TFCOcOmkvio7Mg8BIi30uBvZvdYLMvDIi9gKOpZg0cBeKEWCXASdn5kWdK1eSJHWLdgPO7vNaRRNlZ+Iz5rp/Zl5N0RIkSZK2Ei0DTkTskJm3wr2PTZAkSeoJ03Uy/n1EDDSujIifRMSj5rEmSZKkOZku4PS1WL8bcL/OlyJJktQZ7Q4TlyRJ6hkGHEmSVDkGHEmSVDkzBZypWa6XJEladDPNgzMSEXc3rHsgcGZE3Fm3biozD+xsaZIkSVtmuoDzTYqWmsYRU5eUS0dSSZKkrtQy4GTm/gtYhyRJUsfYyViSJFWOAUeSJFWOAUeSJFWOAUeSJFWOAUeSJFWOAUeSJFWOAUeSJFWOAUeSJFWOAUeSJFWOAUeSJFWOAUeSJFWOAUeSJFWOAUeSJFWOAUeSJFWOAUeSJFWOAUeSJFWOAUeSJFWOAUeSJFWOAUeSKm54eJiJiYmW2ycmJhgeHl7AiqT5Z8CRpAobHh5m9erVrFixomnImZiYYMWKFaxevdqQo0ox4EhShQ0NDTE4OMjY2NhmIacWbsbGxhgcHGRoaGgRK5U6y4AjSRU2MDDA6OjoZiFn3bp1m4Sb0dFRBgYGFrtcqWPuu9gFSJLmVy3k1ALNsmXL2LhxI+vXrzfcqLJswZGkrUAt5PT39zM5Ocn69evp7+833KiyDDiSJKlyuvoWVURMzbDLTpl58wznuA/wZuCVwB7ABuBS4ITM/F5HCpWkLlfrUDw5OUl/fz8bN25kcnKSFStW2IqjSuqFFpwxYKjF1+1tHP9J4MPAVcDrgGOBAL4ZEU+bj4IlqZs0jpa68sorOe+881qOrpKqoKtbcEqTmXnWlhxYBphXAyOZ+eK69WdTBJ5hYK+OVClJXagx3NRaa9atW7dJx2NbclQ1vdCCMxcvL5en1K/MzOuBc4AnR8TjF7wqSVogIyMjLYeCNw4hHxkZWcRKpc7qhRYcACKiD9g2M9u5LVWzN7ARuLzJtu8CLwOeCvx07hVKUvdZtWoVUEz416x1phZyRkZG7t1XqoJeCDi7RsSZwKHAdhFxG3Au8K6yJWY6uwETmXlPk22/KZeP7VilktSFZgouAwMDhhtVzoIGnIg4vI3dbsjMb9T9PAh8Hzicot7nUdx62j8i9srMm6Y514OB37fYdnvdPpsZHx9vo9TusWHDhp6rWfPP60KteG2omSpdFwvdgvO5Nvb5KlALOAdRdDJeW7f9rIi4FngPcDTwrs6WWFi6dOl8nHbejI+P91zNmn9eF2rFa0PN9OJ1sXbt2qbrFzrg7NTGPvfeTsrMr7TYZw1FwHkW0wecW4HtWmzbvm4fSZJUIQsacGaalG8WJoEpYIcZ9vsFsDwi7p+Zdzdse0y5/HmHapIkSV2ia4eJR8QTIuLIiHh0k817AH38uaNwK9+m+B33abLtGeXy0i2vUpIkdaOuDTjAMuATwHFNttVuS51dWxERO0bEnhGxc91+p1O09Lyl/uCI2IOis/JoZl7T0aolSdKi6+Zh4iPAq4BXR8SuwAXANhTDxZ8FfB34VN3+h1AEmncBHwTIzB9FxD8Db42IcygC0a7AW4E7gb9fmF9FkiQtpK5twcnMP1K0srwdWAJ8jOKZUv3luoPLfWbyNoog8ziKQHQs8D1g38x0gj9Jkiqom1twyMwNwMnl10z7ngGc0WT9FHBq+SVJkrYCXduCI0mStKUMOJIkqXIMOJIkqXIMOJIkqXIMOJIkqXIMOJIkqXIMOJIkqXIMOJIkqXIMOJIkqXIMOJIkqXIMOJIkqXIMOJIkqXIMOJIkqXIMOJIkqXIMOJIkqXIMOJIkqXIMOJIkqXIMOJIkqXIMOJIkqXIMOJIkqXIMOJIkqXIMOJIkqXIMOJIkqXIMOJIkqXIMOJIkqXIMOJIkqXIMOJIkqXIMOJIkqXIMOJIkqXIMOJIkqXIMOJIkqXIMOJIkqXIMOJIkqXIMOJIkqXIMOJIkqXLuu9gFtBIRRwCnz7DbxZm5/xzOcV5mvnDWxUmSpK7WtQEHGAWGWmx7JPDPwE/bPNcwcFGT9dfPvixJktTtujbgZOavgV832xYR5wLrgOPaPN0VmXlWp2qTJEndrWsDTisRcQjwAuA1mbluseuRJEndp6c6GUfEA4BTgMuBz2zB8feLiAd2vDBJktRVeirgAK8FHgW8IzOnZnHcARFxOXAXcGdEXBMRb4mIvnmpUpIkLaoFvUUVEYe3sdsNmfmNJsc+AHgn8M3MvHiWL/0c4CMUfXYeDbyx/HkJ8IZmB4yPj8/yJRbXhg0beq5mzT+vC7XitaFmqnRdLHQfnM+1sc9Xgc0CDnAE8Ajg72fxel8DDgJ+mJm/q62MiM8BPwaOjIhTMvNnjQcuXbp0Fi+z+MbHx3uuZs0/rwu14rWh4eFhhoaGGBgYuHdd/XUxMTHByMgIq1atWqwS27J27dqm6xc64OzUxj73tFj/GoqRU19u98Uy83qaDAXPzDsj4nTgH4FnApsFHEmSqmp4eJjVq1ezZs0aRkdHNwk5UISbFStWMDY2BtD1IaeZBQ04mXnzlhwXEbsBTwHOzMxWAWi2biyXO3TofJIk9YShoSHWrFnD2NgYK1as2CTk1IebwcFBhoZaTUnX3Xqlk/GB5bLZrauWIuKFEfGqVpvL5W+2uCpJknrQwMAAo6OjDA4O3htyJiYmWLdu3SbhplnrTq/olXlwlpfLK1vtEBE7Ag8DJjJzfbn6DcCzI+Lnmfmtun0fArwauIOiz48kSVuVWsipBZply5axceNG1q9f3/PhBnon4Cwpl7+aZp9DKJ479S7gg+W6o4FvA+dHxBpgjGKY+WqK/kCvycyb5qNgSZK6XS3kLFu2jMnJSQD6+/t7PtxA79yiqnVOvm02B2XmlcBewDkUo7BOA94KrAUOyMxZTxYoSZK6X0+04GTm/25jnzOAM5qsvxp4ReerkiSpt9U6FE9OTtLf38/GjRuZnJzcrONxL+qVFhxJktRBjaOlrrzySs4777zNOh73KgOOJElbmcZwU2ut2WWXXZqOrupFBhxJkrYyIyMjLYeCNw4hHxkZWcRKt1xP9MGRJEmdU5uZuPFRDTW1kNMLj2poxYAjSdJWaKbgMjAw0LPhBrxFJUmSKsiAI0mSKseAI0mSKseAI0mSKseAI0mSKseAI0mSKseAI0mSKseAI0mSKseAI0mSKqdvampqsWvoOmvXrvU/iiRJPWL58uV9jesMOJIkqXK8RSVJkirHgCNJkirHgCNJkirHgCNJkirnvotdwNYmInYGjgdeCDwMuAm4ADg2M3/b5jkeB3we+EvglZl5Rov9ngC8F/hrYHvgt8CFwHGZOVG330XlPq0ckpnntlObOmeu10pEPL08fm/ggcC1wH8B78vMP9Tt9yvgMdOc6smZ+cMt+y00F3O5BiKiD3gZ8DpgkOI94FrgPIpr4JZyv/2B0RlK+XVm7lbufxG+X/SUOV5HM41E2ikzb+5IoR1mwFlAEfEg4CJgT+BU4ApgD+BtwAERsTwzfz/DOV4JfKyN1/pr4OvAjcBJFOHmryne7J4VEU+q/5ArDbU43eUzvZ46a67XSkS8DPg3ICne2G4Fngu8A3hGRDw9M/9Ud8gkcFSL0/1ybr+NtkQH3i8+AryZ4n3gPcBGYCVwNPDMiNg7M+8Bfkrr//e3B/613KeR7xc9oBOfO8AYxftIM7d3qNSOM+AsrDcDTwBWZeaa2sqI+BFwDnAs8NZWB0fE6yjebD4OXFl+38ongQ3Afpn563LdZyPilrKOlwNr6g/IzLNm+wtp3mzxtRIRDwD+heJf60+t/Usd+ExEnEPxr7jnUPwLruYO//5dZy7XwJPL4y/IzJV1mz4dEecCL6AIvOdk5iTQ9G8fER8FpoC3NG7zeukZc/rcKU324t/bPjgL6+UUafe0hvXnAdcBh5fNytM5JDPfCNzdaoeIeDBwCfChunBTU/tQe2LbVWsxzOVaeShwNvCBunBT49+/d8zlGrgLeDdwQpNtXyuXj57uxSNiObCa4n3kqjZrVvfpxOdOT7IFZ4FExA4UTYTfysy76rdl5lREXA4cCuwO/KLZOTLzk+28VmbeBry6xeYdy+Wt09T6IOCuhlsYWiBzvVbKUHtEi9O38/ffFrgzM50FdJF04BoYo7it0Mye5fLHM5SxBrgeeP8Mtfp+0aU68bnTcL4+YNvM7NrbUvVswVk4tU6c17XY/pty+dh5ruP1FE3OX2jcEBHvi4jfAXcAd0XE1yNin3muR5ubl2slIu4PvIri79vYCfRBEfGxiPg9xb/27oiIcyNiz8bzaEF07BqIiPtHxE4RMRgRHwBWAZ/NzJYdiyPiuRSd04/LzDtb7OP7Rffr1HW0a0ScCdwG/CEibo2IMyPiEZ0ocr4YcBbOg8vlHS22396wX8dFxInAM4FTM/MHTXbZH3g78Dzgg8C+wMXlaBwtnI5fKxFxH+BTwFKKkRM3NOwyAOwGHAkcQtGH67nAdyJiSbuvo47p5DXwUmA9RUfh1wCvy8wjZjjmeIrO5f82zT774/tFt+vUdTRYLg+n6Fx+DvB3wGURseucKpxH3qLaCpQfbh+nGCVzHpt3KHsHxQX+jbrbEl+OiG8C/wN8CHjaApWrDitvIXyeonPxcGZ+pGGXVwAbM/OSunXnRsRPKELRPwAvWZBiNR++AhwA9AMHAZ+MiGcDr2jWOhMRBwJPAd6amRubnM/3i63LQRSdjNfWrTsrIq6lGJ13NPCuRalsBgachVPr87Bdi+3bN+zXERGxHcXtqOcBp1P86+2P9ftkZtNhnZn5tYj4OfDUiNi+ybByzY+OXSsR0Q98CdiHYu6T4xr3ycyLWxz+GYpg/KyZXkcd17FrIDN/B/yu/PGLEfFD4KPAT4D3NTnkNcAfgX9vcT7fL3rHnK+jzPxKi01rKALOs+jSgOMtqoXzS4q+L49ssb12r/TnnXrBMtz8D0W4OTYzX9UYbtpwI9DHPN4602Y6cq1ExEOASyn+Nf7KZuFmOmWn0ZuAHWZznDpiPt8vPl0un9O4oWztWwl8u34y0Fnw/aK7zOd1NFmeu2vfHww4C6Tsdf5jYK+IeGD9tojYhuL+9bWZ+Ztmx89WRNyXYtbapwGvycwTW+z30Ih4RUTs22RbH8WEUHdSfNBpAXTiWilHT3yFYijw86eZ7fqxEfHqiFjWZNv2wCP4c0dELZC5XgMR8Z6IuCkintlk81+Uy2Yt+H8FPAj4Rovz+n7RQzpwHT0hIo6MiGZTCuxBEWa79v3BgLOwTgO2pejIWe9wik6etX9ZERF7RsTuc3it9wAHAkdnZuP8B/W2obgV8cnG/wEohpo/BPjvcsZTLZy5XiunAE8CXpKZF07zOg8pz/XPTebCeCfFG9jZsy9fHTCXa+BKYBeKSd4avbxcXtpk2/K645vx/aL3zOU6WgZ8AmjW+lu7LdW17w/2wVlYn6B4NszJEfEYiimzH0/R6fcnwMl1+45TTLN/7zDdiDiIP99LfUptGRG1e92TmXlxeWviGGACuC4iDmtSy+2ZeWFmXh8R76WYEOw7EXE6xf3Y/YBXUgwvPHpuv7a2wBZfKxHxRIqOw2PANi3+/pOZeXFmXhYRZ1DMm3NRRHyRYpK4A4HDytf6x47/dmrHXN4vvgR8GXhuRFwMjFCMmPlrioDz24bja2oj5n7VrCDfL3rSXK6jEYqpJV5djpa6gCLkHkrR9+brFAMRulLf1JRzeS2k8tbBCcCLKB56NkEx5O74zFxft98UkJlZH3B+xfQPRbw4M/ePWT48rzz3iygu+CcCD6B4o/pv4P2ZeWN7v506aUuvlYg4gqJD+XQuzsz9y/23oQg4qyje2O5Dce/+LOCkcuJILYI5vl9sQ/E3fTnF9AD3o5i470LgxCZTBRAR5wHPB2K62Yt9v+gtc7yOHkgxo/WrKObL+RNwFcUUAqd0c2udAUeSJFWOfXAkSVLlGHAkSVLlGHAkSVLlGHAkSVLlGHAkSVLlGHAkSVLlGHAkSVLlGHAkSVLlGHAkSVLlGHAkSVLl+LBNSZUVEdtRPAn5RcCjKZ7HVO/tmdnsoZOSepwBR1IlRUQfcDbFk67/keIpyk8Djqd4WvYXgPMXqz5J88uAI6mq3gD8DXBgZn6tXPe1iHgS8Azg2Mz0acNSRdkHR1JVvRL4Wl24qfkZsJPhRqo2A46kyomIhwBPAS5ssvlhwO8WtiJJC82AI6mKHlMuf1u/MiK2AQ4CzlvwiiQtKAOOpCq6uVzu2bD+GGAn4F8XthxJC81OxpKq6OfAD4C3R8QkcA3wfIqOx3+fmT9ezOIkzb++qSn72Umqnoh4NHAqcABFa/Va4KTM/O9FLUzSgjDgSJKkyrEPjiRJqhwDjiRJqhwDjiRJqhwDjiRJqhwDjiRJqhwDjiRJqhwDjiRJqhwDjiRJqpz/D+avJfcVSpNCAAAAAElFTkSuQmCC\n",
            "text/plain": [
              "\u003cFigure size 576x432 with 1 Axes\u003e"
            ]
          },
          "metadata": {
            "needs_background": "light",
            "tags": []
          },
          "output_type": "display_data"
        },
        {
          "data": {
            "image/png": "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\n",
            "text/plain": [
              "\u003cFigure size 576x432 with 1 Axes\u003e"
            ]
          },
          "metadata": {
            "needs_background": "light",
            "tags": []
          },
          "output_type": "display_data"
        }
      ],
      "source": [
        "make_diff_plot(all_errs_svd, all_errs_gs, sigmas, title='Gaussian Noise', ytitle='Frobenius Error Diff', xtitle='$\\\\sigma$')\n",
        "make_diff_plot(all_geo_errs_svd, all_geo_errs_gs, sigmas, title='Gaussian Noise', ytitle='Geodesic Error Diff', xtitle='$\\\\sigma$')"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "7aqut6mFMKFU"
      },
      "source": [
        "# Uniform Noise\n",
        "Here, the noise matrix is constructed with iid entries drawn from $\\sigma \\textrm{Unif}(-1, 1)$."
      ]
    },
    {
      "cell_type": "code",
      "execution_count": null,
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "SongtFfSMM9H",
        "outputId": "7688256f-324a-4908-c27c-77ec05a28cb7"
      },
      "outputs": [
        {
          "name": "stdout",
          "output_type": "stream",
          "text": [
            "finished sigma = 0.125000 / kappa = 448.000000\n",
            "finished sigma = 0.250000 / kappa = 320.000000\n",
            "finished sigma = 0.375000 / kappa = 192.000000\n",
            "finished sigma = 0.500000 / kappa = 64.000000\n"
          ]
        }
      ],
      "source": [
        "(all_errs_svd, all_errs_gs,\n",
        " all_geo_errs_svd, all_geo_errs_gs,\n",
        " all_noise_norms, all_noise_sq_norms\n",
        " ) = run_expt(sigmas, num_trials, noise_type='uniform')"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": null,
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 865
        },
        "id": "BXn6z__mRzc9",
        "outputId": "b73db9d4-facc-4f09-b0f6-9ed47c5163e8"
      },
      "outputs": [
        {
          "data": {
            "image/png": "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\n",
            "text/plain": [
              "\u003cFigure size 576x432 with 1 Axes\u003e"
            ]
          },
          "metadata": {
            "needs_background": "light",
            "tags": []
          },
          "output_type": "display_data"
        },
        {
          "data": {
            "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjgAAAGoCAYAAABL+58oAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+WH4yJAAAgAElEQVR4nOzdeZwcVb338c8YZSeBhG5AvLLci79kGFQIArJIhotsQURhcAEUEI06g6zuD5uAcoWrbBOVHUF8LhMl4RoWRYbwsAgSZIkz/MISNkGnkwHBhLAM8/xxqkOnU93pmemerq75vl+vvCpT51TVaaaY+ebUOXWaBgcHEREREUmTd9W7ASIiIiLVpoAjIiIiqaOAIyIiIqmjgCMiIiKpo4AjIiIiqaOAIyIiIqmjgCMiw2Jmd5jZbSXKtjCzQTM7fAjnmxYds1v09bvNbJaZvW5mN1Wr3SMRtW+xmW0YU3akmT09xPM9bWaXVat9IvKOd9e7ASIikXuATYEl0detwMHADGBOvRoVYwPgNOD4KpzrI8DrVTiPiBRRwBGRRHD3N4C/F+yaGG1/7+7/qEOTSrkEaDezn7v7YyM5kbvnqtQmESmigCMiNWdm04Bu4KPAt4C9gKXAr4GT3H2woM7uUflp0eGLzGyeu08zsy2A/wb2BNYBHPgvd/9V0XU+A/wQeMHdPxY9OvoV0EToEWoCLgR+ClwK7Av0A99z9+tW83GuB7aNjt2vzGceB3wfOArYDFgM3AB8293/FdV5GrjN3Y8xs3dFn/kI4L3AS8Bc4AR3fzWq3wz8mNDzsy5wN3DcSIOWSBppDI6IjKaLgFnAhwkB4QTCY6hi5wFfjf6+I/BpM1sHuB3YmBAsWgiPrq41s08UHX8ycDQh6OR9BngD2Bn4BSFM3ADMBrYH7gR+YWbrVfA5jgP2NrPpZeqcTQhz3wOmRJ/nYOCqEvWPAU4EvgF8IGrv7oT/TpjZRsAdwPrAdGA3YBC43cwmVNBmkTFFAUdERtNsd7/O3Z8ihJilhACzkqiH45/Rlzl37wcOArYEjnL3P7n74+5+CnAv0F50ijnufqe7v1iw7zV3P93dH4+uDfBE1J4ngAuA9YD/WN2HcPcHCUHlv83sPcXlZrZm1KYL3P3X7v6ku98InEoIa5vGnPbDwDPu/jt3f9bd7yT0LJ0blX+JMP6nzd0fcPeHgMOBDQm9PiJSQAFHREbTn/N/cfe3CQOKV5mRVMIOwJIooBS6n9ADU+jBmOMfKfh7f7R9KGZfpb0h3yM8Sjo2pswIYeneov33Ex6PbRdzzE1As5ndbGafN7ON3X2Ru3tUvhOwwN378ge4+2Lgr4RwJCIFFHBEZLgGCL+s44yLtm8W7V9W9PVgmXMUGw+8ErP/1aiseF+x1/J/cffBmPbk91XUnmjg81nAqWaWiWkrMe19tai88Hy/A/Yh/He9DHjRzG4xs80LjvmQmf2r8A8h3GxSSZtFxhIFHBEZrhyQLVG2WbR9oYrX+yfxvSsTeOdx1mg7nzB4+Kyi/fn2FLd3QlH5Stz9D+5+AGEG2cHAZOB/Co55hBBoCv9MJgycFpECCjgiMly3EB6pTI0p6wD+AdxXxes9AEw0s8lF+z9KwaOv0RRNbT+ZMED4Q4VFhN6aXYsO+SjwNjGP0Mxs72iWFO6+3N1vIIwL2iaqcj9hDNKL7v5E/g9hNmySptGLJIKmiYvIcF0LfBn4jZl9ixBANiL0JhwMfCYKANVyA/AE8Esz6yD0aHwZmEqYVl4X7j7bzO4gDCp+Idr3hpldAJxgZj3AXYRxN6cD15R4r89RwAejz/YE4aWHnwfmReVXAt8ErjOzHwAvEwZen0OYVfX7mnxAkQalHhwRGRZ3fwv4OCHonA08Rvgluxmwp7vPqvL1lhOCzPPAH4CHgWnAJ9399mpeaxiOZ9Wfp6cR3llzJqFH53xCSCn1OGkG4W3O1wFPAr8FHiVMdycaXLwH8B7CdPEeQgD6rLsr3IgUaRocHFx9LREREZEGoh4cERERSR0FHBEREUkdBRwRERFJnYaYRWVmaxDeM3EycKe7TxvCsbsRBvvtCKwFPAf8Bjgzv+BdVO9pYPOYU+RtF70aXURERBIu8QHHzIwwq+ADVP7G0/yxhxFmeDgh5LwCHEBYAG93M9stel18Xg74eonTLYrbOX/+fI3SFhERqaOpU6eukg8SHXDMbEPCC7EeJ6xD89gQjl0T+Bmhx2Ynd8+/OfQKM7uB8P6IfQnrv+QtG87U1qlT495zlky9vb1MmTKl3s2QBNC9IIV0P0heo90L8+fPj92f9DE4awC/BHYuWHCuUpsQ3iPxo4Jwk5cPNR8cYftEREQkgRLdgxO97fNrwzz2GeDIEsX59WDiFu4DwMzWAV4rWJRPREREGkTSe3CqLhqwfDRhFeHZRcVrm9mFZvYSsBRYZmazY9a+ERERkQRLdA9OtZnZu4BLgSnASe5evNJxFtiC8Mr0N4BWwvoy08xsR3dfGHfe3t7emrW52pYvX95Q7ZXa0b0ghXQ/SF5a7oUxE3DMbG3CbKyDgE53/0lRlS8CA+5+V8G+2Wb2KCEUnQF8Lu7cjTQYq9EGj0nt6F6QQrofJK/R7oVSg4zHRMAxswxwI7Az4f03pxbXcfd5qxwYXAFcRB1XKxYREZGhSf0YHDPbGLibMM38qLhwU070npzFwPgaNE9ERERqINU9OGY2HrgFeD9woLvfXKLeVoTxNve5+4KisvWAzYAna9xcERERqZLU9OCY2WQz27Jo9wXAh4HPlQo3kY2By4Cfmlnx2xC/Q3iD8m+r1lgREZEE6OzspK+vr2R5X18fnZ2do9ii6kl0D46ZNQPNRbszZnZIwdc3ufsyoJewJMPk6NgPEgYO9wDjio7Jy7n7PHe/18yuIrw35w4zux54HdgHOAR4FDi7ah9MRESkzjo7O+no6GDmzJl0d3eTzWZXKu/r66O1tZWenh4A2tvb69HMYUt0wAEOJawhVagZ6Cr4ekvg6Zhjtyf0vBTXLzQPmBb9/RjgLsK08HMJvVuLCIt8/tjdXx1y60VERBKqra2NmTNn0tPTQ2tr60ohpzDcNDc309bWVufWDl2iA467nw6cXmHdpqKvrwKuGsK1BoDLoz8iIiKpls1m6e7uXhFk8iFnyZIlHHLIISvCTVzvTiNIdMARERGR2ikOOS0tLQwMDNDf39/Q4QZSNMhYREREhi4fcjKZDLlcjv7+fjKZTEOHG1DAERERkRRSwBERERnD8gOKc7kcmUyGiRMnksvlaG1tLTuFPOkUcERERMao4tlSCxYsYM6cOTQ3N68YeNyoIUcBR0REZAwqDjf5MTeTJk2iu7u74UOOAo6IiMgY1NXVVXIqeH7gcT7kdHWVep1ccmmauIiIyBiUfzNxW1tb7GypfMjp6upquLcYgwKOiIjImLW64JLNZhsy3IAeUYmIiEgKKeCIiIhI6ijgiIiISOoo4IiIiEjqKOCIiIhI6ijgiIiISOoo4IiIiEjqKOCIiIhI6ijgiIiISOoo4IiIiEjqKOCIiIhI6ijgiIiISOoo4IiIiEjqKOCIiIhI6ijgiIiISOoo4IiIiEjqKOCIiIhI6ijgiIiISOoo4IiIiEjqKOCIiIhI6ijgiIiISOoo4IiIiEjqKOCIiIhI6ijgiIiISOoo4IiIiEjqvLveDaiEma0BnAWcDNzp7tOGcOwuwCnAzsDawELgUuBidx8sqtsM/ADYAxgPPANcC5zj7m+M/JOIiIjIaEh8wDEzA64DPgA0DfHYPYGbgeeA04F+4JPAhcC/A8cX1N0GuAd4DTgPeB6YFh23PXDQSD6HiIiIjJ5EBxwz2xB4EHgc2AF4bIinmAksB3Z39xejfdeY2WzgG2Z2pbs/HO3/CbAesJu7Pxrt+5WZLQWOM7MD3f3GkXweERERGR1JH4OzBvBLYGd396EcaGY7AQZcXxBu8i4m9AYdHtXdFPg4cHtBuCmsC3DEENsuIiIidZLoHhx3/wfwtWEevmO0vTem7L5ou1O03YEQeFap6+5PmFl/QV0RERFJuKT34IzEFtH2+eICd38VeBnYanV1I88C/2ZmiQ6EIiIiEqT5F/b60XZZifKlBXUqqZuv91JxYW9v73DaVxfLly9vqPZK7ehekEK6HyQvLfdCmgPOqJkyZUq9m1Cx3t7ehmqv1I7uBSmk+0HyGu1emD9/fuz+ND+ieiXarluifL2COpXUBXi1Cu0SERGRGktzwHkq2r6vuMDMJgATCNPPy9aNbA4scve3qtpCERERqYk0B5x7ou2uMWW7R9u7ou39wFtxdc2sBdigoK6IiIgkXGoCjplNNrMt81+7+0OElwS2mdn7Cuo1AScAbwJXR3UXAzcC08xsu6JTnxRtL6th80VERKSKEj3IOFobqrlod8bMDin4+iZ3Xwb0Ag5MLij7OtAN3Glm5xOmhn8W2BM4xd2fLKj7TeBjwK1mdh7wArAvcBhwubvfWb1PJiIiIrWU6IADHAqcVrSvGegq+HpL4Om4g939PjP7GGEBzR8AaxKC0NHufmVR3aeihTnPBr5FmBL+JGGBz/NH/ElERERk1CQ64Lj76YTFLiupG7sQp7s/AOxf4TkeJ4QqERERaWCpGYMjIiIikqeAIyIiIqmjgCMiIiKpo4AjIiIiqaOAIyIiIqmjgCMiIiKpo4AjIiIiqaOAIyIiIqmjgCMiIiKpo4AjIiIiqaOAIyIiIqmjgCMiIiKpo4AjIiIiqaOAIyIiIqmjgCMiIiKpo4AjIiIiqaOAIyIiIqmjgCMiIiKpo4AjIiIiqaOAIyIiIqmjgCMiIiKpo4AjIiIiqaOAIyIiIqmjgCMiIiKpo4AjIiIiqaOAIyIiIqmjgCMiMsZ0dnbS19dXsryvr4/Ozs5RbJFI9SngiIiMIZ2dnXR0dNDa2hobcvr6+mhtbaWjo0MhRxqaAo6IyBjS1tZGc3MzPT09q4ScfLjp6emhubmZtra2OrZUZGQUcERExpBsNkt3d/cqIWfJkiUrhZvu7m6y2Wy9mysybO+udwNERGR05UNOPtC0tLQwMDBAf3+/wo2khnpwRETGoHzIyWQy5HI5+vv7yWQyCjeSGgo4IiIikjoKOCIiY1B+QHEulyOTyTBx4kRyuVzJ2VUijaYhxuCY2UTgNOAgYFNgMXATcIq7v1jmuCOBK1dz+nnuPi2q/zSweZm627n7Q5W2W0QkiYpnS3V3d7Nw4UJmzJixYuCxHlVJo0t8wDGztYE7gMnAxcADwNbAycCeZjbV3V8qcXg3UGqe4/uAnwJ/LdqfA75e4phFlbdcRCR54sJNNptlyZIlKw08VsiRRpf4gAMcD2wLtLv7zPxOM3sYuAE4BTgx7kB3fwZ4Jq7MzGYDS4BTi4qWufusKrRbRCRxurq6Sk4FL55d1dXVRXt7ex1bKzJ8jRBwvgAsBS4v2j8HeB443MxOcvfBSk9oZp8CPgkc4+5LqtZSEZGEyweWtra22N6ZfMhRuJFGl+hBxmY2nvBo6kF3f72wLAo09wMZYMshnHNN4ILo2CtWU3cdM2saartFRJKsvb297KOnbDarcCMNL+k9OPkBv8+XKH822m4FPFXhOb8M/BtwRIlen7XN7ELgCGADYLmZ3Qp8x90fizthb29vhZeuv+XLlzdUe6V2dC9IId0PkpeWeyHpAWf9aLusRPnSonplRb033wHudPd5JaplgS2AGcAbQCvQDkwzsx3dfWHxAVOmTKnk8onQ29vbUO2V2tG9IIV0P0heo90L8+fPj92f9IBTbUcCmwHHlij/IjDg7ncV7JttZo8ClwJnAJ+raQtFRERkxJIecF6JtuuWKF+vqN7qHEOYOfW7uMIyvTpXABcBe1V4HREREamjRA8yJrx3ZpDwzpo4+TE6j6/uRGa2BbADMNfd3xxKI9z9bcLLBccP5TgRERGpj5IBx8w2M7N3RX9/fz1mE7n7UuARYHszW6uofeOAXYDn3P3ZuOOL7BNtb48rNLOtzOxLZtYSU7Ye4dFWJdcRERGROivXg/M47/ScLAI2qn1zYl0OrEMY9FvocMKA4MvyO8xsspmVmjI+NdouKFG+cXSun8aEue8ATcBvh9BuERERqZNyY3CWAj8zs/sIv9xPNrOlJeoOuvuZVW9d8HPgMOA8M9ucsFTDNoS3Fz8KnFdQtxdwwrtzin0g2j4ddxF3v9fMriIMRL7DzK4HXif0/BwSXevskX0UERERGQ3lAs6JwI8I06QHgW+UqTsI1CTguPubZrY3cDpwMNAB9BF6W05z91JTyIttGG1fLVPnGOAuwrTwcwk9XIuAs4Afu3u5Y0VERCQhSgYcd78GuAbAzN4GNnf3vtFqWFFbXiEErtg1pwrqlRwn5O4fquA6A4RHYsXLQoiIiEgDKTfIeIGZbRJ9+Qyhl0ZEREQk8co9otoSmGFm3cD7gV3M7KVSld39zmo3TkRERGQ4ygWcK4HTgFOjr2+IqTNIGIA8CIyrbtNEREREhqfcGJwOMzsfmATcC0wH+kerYSIiIiLDVXapBnd/AnjCzI4Cbnf310enWSIiIiLDVzLgmNnngVnu/gbwJnCwmZU8kbtfV/3miYiIiAxduR6ca4HbCO+cuXY15xkEFHBEREQkEVY3iypX8HcRERGRhlBukPEzcX8XERERSbqyg4wBzKwZOB7YA9gEeIuwqvatwMwKV/IWERERGTXlVhPHzI4EHgIOAO4DOgnLGCwCvgb0mFlbjdsoIiIiMiTlZlF9CLgEOAc4093fLCpfl7Ag5TVmttDdH65pS0VEREQqVO4R1XHAbHc/Na7Q3ZcCXzezjYHvAZ+pQftEREREhqzcI6ppwC8qOMeFhPE5IiIiIolQLuC8F1hYwTkeBzaqTnNERERERq5cwFkDqGRphgHCgpsiIiIiiVAu4AxGf0REREQaSrlBxk3A38qtPyUiIiKSROUCzhmj1goRERGRKiq3VIMCjoiIiDSksm8yFhEREWlECjgiIiKSOgo4IiIikjoKOCIiIpI6FQUcMzvDzDaodWNEREREqqHSHpx2IFPLhoiIiIhUS6UB5yTgQjPb2czWrGWDREREREaq3Iv+Cp0FrA3cDWBmA0Xlg+6u4CMiIiKJUGnAuaymrRARERGpoooCjt5qLCIiIo2k0h4czGwT4AvA9sB44J/A/cAv3X1JbZonIiIiMnSVThPfAXDgdMCA9YBm4Bygx8wm16qBIiIiIkNVaQ/OOcA84DB3fzW/08w2BP4H+DFwYPWbJyIiIjJ0lQacnYBdCsMNgLu/ZGbfAW6vessKmNlE4DTgIGBTYDFwE3CKu7+4mmMHV3P6Dd395YL6zcAPgD0Ij+KeAa4FznH3N4b9IURERGTUVBpwxgFvlShbCrynOs1ZlZmtDdwBTAYuBh4AtgZOBvY0s6nu/tJqTtNDCEhxlhZcaxvgHuA14DzgeWAa4dHc9oSAJSIiIglXacB5EOgwsw53X9EjYmZNwLeBv9SicZHjgW2BdnefWXDth4EbgFOAE1dzjpy7z6rgWj8hjC/azd0fjfb9ysyWAseZ2YHufuOQP4GIiIiMqkoDzinALcB0M7sfeAWYQHh0tRGwb22aB4SZW0uBy4v2zyH0sBxuZicVBq/hMLNNgY8DfywIN3kXA8cBRwAKOCIiIglX0Swqd+8GPgL8Hvh3wviULQnjYKa6+521aJyZjSc8mnrQ3V8vatMgYZp6JmpLJedrMrN1SxTvADQB9xYXuPsTQD8h0ImIiEjCVdSDY2Z7Ave4+1dq3J5im0fb50uUPxtttwKeKnOejczsl8CngXXN7FVgNvBdd/9bVGeLCq71YTN7t7uXGo8kIiIiCVDpI6o5wBRK//KvlfWj7bIS5UuL6pXSTBhHdDjhM3+C8Ohrmplt7+6Lh3itlQY19/b2rubyybF8+fKGaq/Uju4FKaT7QfLSci9UGnB+CXzfzI5rwKnS+xEGGc8v2DfLzJ4Dvk9YKf27I7nAlClTRnL4qOrt7W2o9krt6F6QQrofJK/R7oX58+fH7q804IwHdgFyZtYDvFpUPuju+wy/eSW9Em1LjZtZr6jeKtz9lhJFMwkBZy9CwKn0WsWfXSTxOjs7aWtrI5vNxpb39fXR1dVFe3v7KLdMRKQ2KhpkDLyPMAblQWA54b03hX/WqEnrYBEwGF0/Tn6MzuPDOHcuOvf46Ov8GJ5y11qk8TfSaDo7O+no6KC1tZW+vr5Vyvv6+mhtbaWjo4POzs46tFBEqmH69Ok0NTWN+E9zc/OIjp8+fXq9/1MAla8m3lrrhpS47lIzewTY3szWcvfl+TIzG0foVXrO3Z+NO97Mto3q3BxTZ2vCrKn8/vsJLzPcNeY8LcAGwP+O8COJjLq2tjZmzpxJT08Pra2tdHd3r+jJyYebnp4empubaWtrq3NrRUSqo9LFNheZ2Xtr3ZgSLgfWAWYU7T8cyAKX5XeY2WQzK5wy3gL8HDg15rz5cTe/BYgGGt9IGHi8XVHdk6LtZYg0mGw2S3d3N83NzStCTl9fH0uWLFkp3BQGHxFpPHPnzmVwcHBEf/JGco65c+fW8b/COyodg/NPYCrwQg3bUsrPgcOA88xsc8JSDdsQ3l78KGFJhbxewqrn+dXNu4CjgS+Z2UaE9/aMI0wX3wu4Dbi04PhvAh8DbjWz8wifd9/o+pfX6n0/IrWWDzn5QNPS0sLAwAD9/f0KNyKSSpUGnAuAH5nZdMKyDKsMtHX366rZsILzvmlmexPWgzoY6AD6CL0pp7l7qWnduPtbZvaJ6JijCWHlbWAhIcxcUDimxt2fMrNdgLOBbxGmhD9JWPfq/Op/OpHRkw85LS0t5HI5ADKZjMKNiKRSpQEnv0xCc4nyQaAmAQfA3V8h9NiUXXPK3Zti9i0n9PKct+oRsed4HDh0GM0UERGRhKg04FS0FIKIJFd+QHEulyOTyTAwMEAul1tl4LGISBpUOovqmXLlZlaraeIiUgXFs6W6u7tZuHAhM2bMiJ1dJSLS6ErOojKzm8xsQtG+Xc1szaJ9GwOv1ah9IjJCceEmm80yadKk2NlVIiJpUG6a+D7AmkX7bgY2i6m7ytgXEUmGrq6uklPBi6eQd3V11bGlIiLVU+4RVVxoKRVkBkvsF5E6yy+/UGqphnzI0VINIpImlQ4yFpEGtrrgks1mFW5EJFUqXYtKREREpGEo4IiIiEjqlAs4g8SPrdF4GxEREUm01Q0y/pOZDRTsWwe43czeLNg3riYtExERERmmcgHn6ph9d5eoq0UoRUREJDFKBhx3P2o0GyIiIiJSLRpkLCIiIqmjgCMiIiKpo4AjIiIiqaOAIyIiIqkzpIBjZu8q+nqt6jZHREREZOQqWovKzNYHLgNeAb5cUHSrmeWAo939lRq0T0RERGTIKu3BOQeYCvwmZn8z8F/VbJSIiIjISFQacA4EjnD3Wwp3uvvNwDFRuYiIiEgiVBpwNgReKlGWAyZUpzkiIiIiI1dpwLkX+JaZrVG408zGEx5PPVDthomIiIgMV0WDjIETgD8Ci82sF1gKjAe2AZYBe9WmeSIiUs706dO56aab6t0M9t9/f+bOnVvvZoisUFEPjrsvAFqAM4FFwJvAY8D3ga3c/S81a6GIiIjIEFXag4O754Bza9gWEREZomr0mjQ1NQEwODg44nOJJEXJgGNmlwAnuvu/or+XM+juM6rbNBEREZHhKdeD83FgTeBfwN5AuWiv2C8iIiKJUTLguPuWBX/fYlRaIyIiIlIFFY/BMbO1gbfc/c3o68nAFOA+d3+hRu0TERERGbKKZlGZ2UeBvxGWa8DMDgEWEJZueNzMWmvWQhEREZEhGspaVF3A/Ojrc4FZwETgIuC06jdNREREZHgqDTgfBv7b3d80sw8BmwNnu/vLwCXAB2vVQBEREZGhqjTgQHi5H4QZVc+5+6PR14PAGvGHiIiIiIy+SgPOAuDrZjYV+Drw24Ky/YEnq90wERERkeGqdBbVqcBs4ETgGeDHAGY2Hfgp8JWatC5iZhMJ43wOAjYFFgM3Aae4+4sVHL9bdPyOwFrAc4QB0me6+78K6j1NePxWynbu/tDwPoWIiIiMlooCjrv/0cz+Ddga+Ku7L4uKHgMOcPff16qB0fT0O4DJwMWElcu3Bk4G9jSzqe7+UpnjDwOuBZwQcl4BDgC+BexuZru5+9sFh+QIvVRxFo3s04iIiMhoGMpaVC8Dfzaz90bvwPmruz9J7R9PHQ9sC7S7+8z8TjN7GLgBOIXQs7QKM1sT+Bmhx2Ynd/9nVHSFmd1A6BHal9AblLfM3WdV/VOIiIiUkZSV4eGd9cnqpRqr01c8yNjMTjazvxPCwp+BzcxsYzO708w2HFEryvsCsBS4vGj/HOB54HAzK/Wd2IQwXuhHBeEmL38XaQaYiIjUXVLCTRJU479FpS/6+xZwBnAN8ElgeVT0JvAe4Ecjbkn8dccTHk096O6vF5a5+yBwP5ABtow5HHd/xt2PdPefxRRPiLavlLn+OmXCk4iISNUNDg7W9U9PT09dr18tlfbgfJXwiOib7v474G0Ad+8njIX5VNVatLL8gN/nS5Q/G223GspJzWwN4GhgGWHwdKG1zexCM3uJ0HO0zMxmR4/lREREpAFUOgZnE+DOEmV/AzaoTnNWsX60XVaifGlRvdUys3cBlxLW0TopZh2tLLAFMAN4A2gF2oFpZrajuy8sPmdvb2+ll6+75cuXN1R7pXZ0L0gx3Q/JUO/vQ1J+Noy0DZUGnKeAjwO/iCnbnTAuJ/GiGVnXEQYXd7r7T4qqfBEYcPe7CvbNNrNHCaHoDOBzxeedMmVKjVpcfb29vQ3VXqkd3QtSTPdDMtT7+5CUnw2VtmH+/Pmx+ysNONcAF5jZB4BuwqOt3czsM8C3gR9WeJ6hyo+PWbdE+XpF9UoyswxwI7Az4f03pxbXcfd5JQ6/grDm1l6ru46IiIjUX6VjcH5MGEh8DCEkrA1cRQg3F7j7j2vSuvDemUHgfSXK82N0Hi93EjPbGLgb2AE4Ki7clBO9J2cxMH4ox9VbZ2cnfX19Jcv7+vro7OwcxRaJiIiMjooCjrsPuvsZwCTgQ4THUh8ENnL3mq0k7rJLz+wAACAASURBVO5LgUeA7c1srcIyMxsH7EJYF+vZuOOjeuOBW4D3Awe6+1Ul6m1lZl8ys5aYsvWAzXhnUHPidXZ20tHRQWtra2zI6evro7W1lY6ODoUcERFJnZIBJ3qh30p/CANwlxB6VvqBbEFZrVwOrEMY9Fvo8Kg9lxW0ebKZFU8Zv4CwGvrn3P3mMtfZODrXT2Omhn8HaGLlNbgSra2tjebmZnp6elYJOflw09PTQ3NzM21tbXVsqYiISPWVG4PzPOHxUKXGjbAtpfwcOAw4z8w2JyzVsA3h7cWPAucV1O0lLMkwGcDMPkgYONwDjDOzQ2LOn3P3ee5+r5ldBRwJ3GFm1wOvA/sAh0TXOrvqn65Gstks3d3dK4JMa2sr3d3dLFmyhEMOOWRFuOnu7iabzda7uTJESXnjaTXeNioiUgvlAs7RvBNw1gW+C/w/4E/AvwhTwz8ONEdlNeHub5rZ3sDpwMFAB9BH6G05rWBdrDjbE3pemoGuEnXmAdOivx8D3EWYFn4uoYdrEXAW8GN3f3Ukn2W0FYeclpYWBgYG6O/vV7gREZFUa6rkrYFmdgXwkLtfGFP2TWAbdz+y+s1Lvvnz5w9OnTq13s0oq6+vj5aWFnK5HACZTIYFCxYo3Ixh+XVmqvnWUGlcuh+SISnfh3pPEx/qf4f58+czderUVVYdqHQW1aeAUv3QNxCWbxARkSGaPn06TU1Ndf2TV882TJ8+vY7fBUmjSgNOE/CREmXbD+E8MsryA4pzuRyZTIaJEyeSy+VKzq4SkdGVhLFUSaD/DlJtlb7orwu43Mx2Bx4mLJ2wDiH0fBb4TW2aJyNRPFuqu7ubhQsXMmPGjJUGHutRlUj9jeXHEoW9SCLVUmnAaSdMDz8C+FrB/sWEt/zWbJCxDE9cuMlmsyxZsiR2dpVCjoiIpElFAcfd3yC8C+Y7ZjaBsLjlUnd/qZaNk+Hr6uoqORW8eHZVV1cX7e3tdWytiIhIdVXag0P0JuEDCWNuxgP/NLP7gd+5+5s1ap8MUz6wtLW1xfbO5EOOwo2IiKRRRQHHzP4DuI2w3ME/gVcJIefbwGNmtpe7v1CzVsqwrC64ZLNZhRsREUmlSmc/nQe8CJi7b+ju73f3DYBtCQOOz61VA0VERESGqtKAswdwrLuvtGq3u/8VOI6wnIGIiIhIIlQacNYiPJqK8w/CUg4iIiIiiVBpwOkFPlOi7Cjgseo0R0RERGTkKp1F9UPgejPbB7gXeAWYAOwK7Ai01aZ5IiIiY8PvPrc20z/wHjh9Ql3bUb9VqILB08Yzd+HIJ2dX1IPj7rOA6YQBxV8CTiP03LwC7OPuN4y4JSIiIiJVUvF7cNz9ZuDmGrZFRERkzDrg168Br43pZTugYDXx60Z2nooXyTSzJjPb38y+Z2YXmNlG0f5692aJNBStHq0VpEWk9ioKOGa2KfAX4HfACYS1qcZH4ebBaBFOEamAVk1+h/5biEitVNqDcz7wJrCtu2eA1wDcvRe4ADizNs0TSa/BwcG6/unp6anr9UVEaqnSMTh7A/tGL/YrdgVwbPWaJCIydmjmTPVmzYgUqrQH523C+lNx1gD0z7FRUI2xG83NzRozISIiqVdpD85DwOlm9nl3fyvalw81xwIPVL1lIiJjgGbOVG/WjEihSgPOqcDvgefM7G5Cr80FZrY1sDmwV43aJwXmzp07ouNX/BDR+AcREUm5Sl/0dzewPTAb2BJ4Fngv0A1Mdfd7atZCERERkSEayov+HPhaDdsiIiIiUhUVB5w8M9sVGFew6y/uXmoAsoiIiMioKxtwzOzjwAx3P6Rg9y3AOkATYaDxH4B9a9ZCkZTRtOBAU4NFpJZKjsExsw8Bc4BNzay4XithLM50oNXMPlm7JoqIiIgMTbkenBOBPwN7ufvbBfsHgefd/RngGTP7BfAFQhiSEqZPn56Y19IXrkVUD/vvv/+IZ4Q1Mk0LDjQ1WERqqdwsqr2AH7l7cR9y8W/HLmDHqrYqhZISbpJA/y1ERKTWyvXgZIDHYvZ/D1hc8PUzwEbVbFSa6V/t9e09EhGRsaFcwPkXsFbxTne/qGjXBlFdERERkUQo94jqUWCfCs7xaeAv1WmOiIiIyMiVCzhXA6dGs6limdm+wDeBX1S7YSIiIiLDVe4R1ZXAgcB9ZvZr4B7CEg1vEqaIHwgcAFzp7r+pdUMbnd59EujdJyIi5WmsYnWUDDjuPmhmnyZMFz8W+GJxFeDL7n5FDdsnIjIm6JeayDv233//EZ+j7JuMo/ffnAecZ2bvBzYF3gaec/e/j/jqFTKzicBpwEFRGxYDNwGnuPuLFRy/C3AKsDOwNrAQuBS42N0Hi+o2Az8A9gDGE2aJXQuc4+5vDPcz6N0ngd59IiJxqvELrdHV+/cDFPyMTkBbRmooi20+S3hENarMbG3gDmAycDHwALA1cDKwp5lNdfeXyhy/J3Az8BxwOtAPfBK4EPh34PiCutsQHsW9Rgh2zwPTouO2JwQskarQv9gFkvGLJE2/1ETyhrzYZh0cD2wLtLv7zPxOM3sYuIHQM3NimeNnAsuB3Qt6e64xs9nAN8zsSnd/ONr/E2A9YDd3fzTa9yszWwocZ2YHuvuNVftkImOc/tUuIrXSCAHnC8BS4PKi/XMIPSyHm9lJxY+aAMxsJ8CAy2IeZV1M6Mk5HHjYzDYFPg78sSDcFNY9DjgCGFHA0b/aJQn/Sta/2EUk7cpNE687MxtPeDT1oLu/XlgWBZr7CW9c3rLEKfJLSNwbU3ZftN0p2u5AWIZilbru/gTh0dZOxWUydPpXu4iI1FrSe3A2j7bPlyjPjwnaCngqpnyLUse7+6tm9nJ0bNm6Bdf6sJm9293fKtPmWEn4l7L+1S4iImNFontwgPWj7bIS5UuL6g3n+PWHUDf2Wk1NTSv+zJo1i1mzZq20r729nd7eXrLZ7Ip922yzDb29vRx66KEr1Z03bx4zZ85cad8ZZ5xBb2/vSvtaW1vp7e2ltbV1pf29vb2cccYZK+2bOXMm8+bNW6m9hx56KL29vWyzzTYr6mWzWXp7e2lvb2+Yz1S4T5+p8s8Ud+82+mdK4/dptD5T3P3Q6J8pjd+n0fhMeY30mUppSvK/5qPp3XcDl7v7MTHlZwHfBz7t7jfElF8CfJkwwPiumPLngfXdfYKZfQ84GzjC3a+NqXsXsCswsXDW1vz58wenTp067M84mvI3b5K/5zI6dC9IId0PkteI98L8+fOZOnXqKgNck96D80q0XbdE+XpF9YZz/CtDqAvwaolyERERSYikB5xFwCDwvhLl+TE6j5coz4/LWeV4M5sATCg4tmTdgmstGs74m2qZPn36Sl1zQ/2TN5JzTJ8+vV4fX0REpGKJDjjuvhR4BNjezNYqLDOzccAuhLcql3oB4T3RdteYst2jbf7R1f3AW3F1zawF2KCgroiIiCRYogNO5HJgHWBG0f7DgSxwWX6HmU02sxVTxt39IeBBoM3M3ldQrwk4gbBw6NVR3cWEd9xMM7Ptiq51UrS9jDqaO3cug4ODI/rT09MzouPnzp1bz/8EIiIiFUn6NHGAnwOHEdbD2pywVMM2hLcXP0pYUiGvl7AI6OSCfV8HuoE7zex84GXgs8CehLWsniyo+03gY8CtZnYe8AKwb3T9y939zup/PBEREam2xPfguPubwN7ARcDBwFWElc0vA6a5e6lp3fnj7yOElscIi2j+AtgEONrdzyqq+xThsdcdwLcIvUfbE9a9Ku5BEhERkYRK9DTxRtBI08Sh/quJS3VMnz6dm266qd7NYP/999djyxRoxKnBUhuNeC806jRxERERkSFrhDE4IlKkGr0m6s0TkTRTD46IiIikjgJOinV2dtLX11eyvK+vj87OzlFskYiIyOhQwEmpzs5OOjo6aG1tjQ05fX19tLa20tHRoZAj0sBG+oZzveVc0koBJ6Xa2tpobm6mp6dnlZCTDzc9PT00NzfT1tZWx5aKiIhUnwJOSmWzWbq7u1cJOUuWLFkp3HR3d5PNZuvdXBEZpmq84VxvOZc00iyqFMuHnHygaWlpYWBggP7+foUbERFJNfXgpFw+5GQyGXK5HP39/WQyGYUbERFJNQUcERERSR0FnJTLDyjO5XJkMhkmTpxILpcrObtKREQak2bUrUwBJ8WKZ0stWLCAOXPmlJxdJSIikhYKOClVHG7yY24mTZoUO7tKREQam2bUrUwBJ6W6urpKTgUvnkLe1dVVx5aKiIhUn6aJp1R7ezsQXvgXN1sqH3K6urpW1BUREUkLBZwUW11wyWazCjciIpJKekQlIiIiqaOAIyIiIqmjgCMiIiKpo4AjIiIiqaOAIyIiIqmjgCMiIiKpo4AjIiIiqaOAIyIiIqmjgCMiIiKpo4AjIiIiqaOAIzIGdHZ2ll01vq+vj87OzlFskYhIbSngiKRcZ2cnHR0dtLa2xoacvr4+Wltb6ejoUMgRkdRQwBFJuba2Npqbm+np6Vkl5OTDTU9PD83NzbS1tdWxpSIi1aOAI5Jy2WyW7u7uVULOkiVLVgo33d3dZLPZejdXRKQq3l3vBohI7eVDTj7QtLS0MDAwQH9/v8KNiKSSenBExoh8yMlkMuRyOfr7+8lkMgo3IpJKCjgiIiKSOgo4ImNEfkBxLpcjk8kwceJEcrlcydlVIiKNLPFjcMxsF+AUYGdgbWAhcClwsbsPVnD8GkAH8GVgK+AN4GHgAnfvKqg3Deguc6qH3f3Dw/wYInVVPFuqu7ubhQsXMmPGjBUDj/WoSkTSJNE9OGa2JyF0bA2cTggpC4ELgZ9WcPy7gDnAfxNCzVeBU4FNgevN7Ksxh3UBbTF/Th7ZpxGpj7hwk81mmTRpUuzsKhGRNEh6D85MYDmwu7u/GO27xsxmA98wsyvd/eEyx38W2Be4yN2/kd9pZv9DCEqnm9kvinqCetx9VnU/hkj9dHV1lZwKXjy7qquri/b29jq2VkSkOhIbcMxsJ8CAywrCTd7FwCeBwwk9M6W8DVwf1V/B3V8ws4eBXYCNgb9Xq90iSZMPLG1tbbGPoPIhR+FGRNIksQEH2DHa3htTdl+03ancCdz9/wL/t0TxBEIAWhpXaGbjgDXc/bXVN1Uk2VYXXLLZrMKNiKRKkgPOFtH2+eICd3/VzF4mDBoeMjPbDdgGmO3urxYVb2dmfwQ+BrzbzF4ArgDOcvfX487X29s7nGbUxfLlyxuqvVI7uhekkO4HyUvLvTCqAcfMDq+g2gvufjuwfvT1shL1lhbUGUobtgB+DbxM/MDhPQmDmM8DNgGOBv4PMBXYP+6cU6ZMGWoz6qa3t7eh2iu1o3tBCul+kLxGuxfmz58fu3+0e3CuqaDOrcDttbi4mW0H3EQIRge4+5MFxY8A+wHu7osKjrkauAPYz8z2cfdba9E2ERERqZ7RDjgbVlDnzWj7SrRdt0S99QrqrJaZ7UcYcLwc+E93v6+w3N37gVuKj3P3t83s58DuwF6EACYiIiIJNqoBx91fHkL1p6Lt+4oLzGwCYZDwg5WcyMzaCI+lngT2c/enVnNIsX9E2/FDPE5ERETqIMkv+rsn2u4aU7Z7tL1rdScxs72AawnTyXctFW7MbC8za49eDrhKcbR9dnXXExERkfpLbMBx94cIPTRtZraiF8fMmoATCI+yri7YP8HMJpvZxIJ9GeA6wkysfdx9cZlLthHel/P5wp1mtg5wHDAIzB7p5xIREZHaS/I0cYCvE5ZquNPMzifMfPosYabTKUWDhD8FXAl8Fzgn2vcdIEMYezPNzIjxZ3d/BjgDmA5cbmY7A38GssAxwAeAM9z9r9X9eCIiIlILiQ447n6fmX0M+EH0Z02gFzja3a+s4BRTo2179CfOUcBV0duNPwJ8DzgImEGYiv4g8B13v2H4n0RERERGU6IDDoC7P0CJ988U1bsKuKpo37QhXutF4Njoj4iIiDSoxI7BERERERkuBRwRkTGms7OTvr6+kuV9fX10dnaOYotEqk8BR0RkDOns7KSjo4PW1tbYkNPX10draysdHR0KOdLQFHBERMaQtrY2mpub6enpWSXk5MNNT08Pzc3NtLW11bGlIiOjgCMiMoZks1m6u7tXCTlLlixZKdx0d3eTzWbr3VyRYUv8LCoREamufMjJB5qWlhYGBgbo7+9XuJHUUA+OiMgYlA85mUyGXC5Hf38/mUxG4UZSQwFHREREUkcBR0RkDMoPKM7lcmQyGSZOnEgulys5u0qk0SjgiIiMMcWzpRYsWMCcOXNKzq4SaUQKOCIiY0hxuMmPuZk0aVLs7CqRRqWAIyIyhnR1dZWcCl48hbyrq6uOLRUZGU0TFxEZQ9rb24Hwwr+42VL5kNPV1bWirkgjUsARERljVhdcstmswo00PD2iEhERkdRRwBEREZHUUcARERGR1FHAERERkdRRwBEREZHUUcAREREZozo7O8u+0LGvr4/Ozs5RbFH1KOCIiIiMQZ2dnXR0dJR8a3X+rdcdHR0NGXIUcERERMagtra2kktzFC/p0dbWVseWDo8CjoiIyBhUvDRHPuQsWbIkdr2yRqM3GYuIiIxR+ZCTDzQtLS0MDAzQ39/f0OEG1IMjIiIypuVDTiaTIZfL0d/fTyaTaehwAwo4IiIikkIKOCIiImNYfkBxLpcjk8kwceJEcrlcydlVjUIBR0REZIwqni21YMEC5syZU3J2VSNRwBERERmDisNNfszNpEmTYmdXNRoFHBERkTGoq6ur5FTw4inkXV1ddWzp8GiauIiIyBjU3t4OhBf+xc2Wyoecrq6uFXUbiQKOiIjIGLW64JLNZhsy3IAeUYmIiEgKJb4Hx8x2AU4BdgbWBhYClwIXu/vgao49EriyTJU57n5Q0TFfBDqAZuBtYD7wQ3f//XA/g4iIiIyuRAccM9sTuBl4Djgd6Ac+CVwI/DtwfIWn6gTuiNn/t6Lr/R/gTKAbOJbw32cGcLOZHeruvxnyhxAREZFRl+iAA8wElgO7u/uL0b5rzGw28A0zu9LdH67gPA+4+6xyFczs/cCpwJ+Aj7v7QLT/10AP0GlmN7r7m8P9MCIiIjI6EjsGx8x2Agy4viDc5F0MNAGHV/GSnwPeQ3j0NZDf6e6vAlcDGwN7V/F6IiIiUiOJDTjAjtH23piy+6LtTkM5oZm9x8zWGq3riYiISH0kOeBsEW2fLy6IelVeBraq8Fx7mtn9wOvAa2b2pJmdYGZNlVwPeDbaVno9ERERqaNRHYNjZpU8UnrB3W8H1o++Xlai3tKCOquzL/ATwhib9wPfiL7+APC1qM76wIC7v1HiWvk6q+jt7a2wGfW3fPnyhmqv1I7uBSmk+0Hy0nIvjPYg42sqqHMrcHuVrvcHYD/gIXf/e36nmV0DPALMMLML3P2xkVxk2bJSGSyZGq29Uju6F6SQ7gfJS8O9MNoBZ8MK6uRnKb0SbdctUW+9gjqx3P1vFE0Fj/a/ZmZXAmcD/wk8Fp1rnJmt6e6vx1yrsE0rTJ06tal4n4iIiNTXqAYcd395CNWfirbvKy4wswnABODBETTnH9F2fMH1pkbXe7Ko7ubR9vERXE9ERERGSZIHGd8TbXeNKds92t5V7gRmdpCZHV2qONrmBxCP+HoiIiKSDIkNOO7+EKGHps3MVvTiRDOfTiA8yrq6YP8EM5tsZhMLTvM14HIz271gH2a2MfAlwgDmW6PdvwZeA441s3cX1J0EfJHQq3NH1T6giIiI1EzT4GDZ5ZzqKnrZXzfwd+B8wtTwzxIGDp/i7mcV1D2SsO7Ud939nGhfC+/0zMwkvJH43whrTW0MHOPuVxSc41jCMhDzCOFprajufwD7RbO7REREJOESvVSDu99nZh8DfhD9WRPoBY5293KLaOaPX2Bm2xMW6zwSmEQYKHwvcJ6731FU/yIzW0zoIeoE3iIs3fBld7+HURT1RJ0GHARsCiwGbiIEu+I3O5c6x38A1wEfAY5y96tK1NuW8N93D8KA6hcJa4Cd6u59BfXuiOqU8il3n11J22TkRnqPmNlu0fE7EsL8c8BvgDPd/V8F9Z7mnXFocbaLelylxkbyPY96vw8DvkJYTHg9wvd8DuF7/s+o3jTCPyzLecbdt4jq34F+LiTeCO+d1fWEbDjEMbajItE9OGOVma1NeHvyZMKyFA8AWwMnAzlgqru/tJpzHEXojYLwgyw24JjZHsBthEHXFxPCzR6EQPgU8OH8L7uCH2RtJS57j7u/UOHHlBEY6T1iZocB1wIO/JwQ/A8APkX4B8Bu7v52VPdpYB3g6yVO94f8L0epnSp8z39KWKD4NmAWMABMJ/zCewjY0d3fNLMMpQPLesAvgNvcfXp03jvQz4VEq8K9M0h4AnJaiSpzkrhOY6J7cMaw44FtgXZ3n5nfaWYPAzcQeqROLHWwmX2F8EPoImBB9PdSLiEsaLqruz8T7bvazP4ZteMLhMd7K6xu4VIZFcO+R8xsTeBnhH+971QQTq4wsxsIv/D2JfzrLm+Zvu91N5Lv+XbR8Tflg0nksmjx4k8SAu4N7p4jBKC485wPDBJ6uVei+yPRRvQ7JZJrtO9xYgcZj3FfILw9+fKi/XMIS0kcXrTMRJxPufs3gLg3MwNgZusTZoadWxBu8vK/3D5YcatlNI3kHtkE+C3wo5ieF33fk2sk3/PXge8Bp8eU/SHavr/cxc1sKmFM4rnuvrDCNksyVON3SsNRD07CmNl4Qjfi/yt+4aC7D0Zran0a2JJ33hVEUb1LKrlWtKbXl0oUT4i2JV+mGHV7vp5/lCGjY6T3SBRmjyxx+kq+7+sAr7m7nm+Pkip8z3sIjxjiTI62j6ymGTMJL0794Wraqp8LCVKN3ylF52sC1nH3paurW2/qwUme/GDOuEU/YfQW/vwqoSv618UFZnammf2dMM3+dTO7zcx2rnF75B01uUfMbA3gaML3tXhQ6NpmdqGZvUT4l+AyM5ttZpOLzyM1UbXvuZmtYWYbmlmzmf0IaAeudveSA4vN7ADCYPRT3f21EnX0cyGZqnXvbGRmvwReBf5lZq+Y2S/NbLNqNLIWFHCSp5JFRgvrVZ2ZnUVYwuJid/9LTJVpwDeBTwDnALsA86JZOVJ7Vb9HzOxdwKXAFMKsiuJBoVlgC2AGYSDyJYQxG38ysw9Ueh0Ztmp+zz8P9AN/BY4BvuLuR67mmNOARYSB6aVMQz8Xkqha905ztD2cMKD8BuAI4F4z22hELawRPaKSFaJfchcRZsvMYdVBZ98i/E9we8Hjid+Z2Z3A74FzgY+OUnOlSqJHCtcRBhd3uvtPiqp8ERhw98I3ec82s0cJoegM4HOj0liphluAPYEM4Z1il5jZ3sAX43pnzGwfYAfgRHcfiDmffi6k336EQcbzC/bNMrPngO8DJwHfrUvLylDASZ5KFhktrFcVZrYu4XHUJwgvTPyKu79VWMfd74871t3/YGaPAzuZ2XqF71CRmqjaPRJNCb4R2JnwLpRTi+u4+7wSh19BCMR7re46MmJV+567+98JL08FuN7MHiK8SPVR4MyYQ44hvBPsVyXOp58LyTbie8fdbylRNJMQcPYigQFHj6iSZxFh7Msqi4xGqr7wZxRufk8IN6e4+9HF4aYC/wCaqOGjM1mhKvdItGTJ3YR/nR8VF27KiQaRLuadBWuldmr5c+GyaLtvcUHUuzed8C6bvuLyCujnQv3V8t7JRedO5M8ABZyEiUamPwJsb2ZrFZaZ2TjCc+3n3P3ZuOOHKlp36zeELuRjCpe/KKq3iZl90cx2iSlrIrw06jXCLzypoWrcI9HMilsIU4MPLPOW663M7EvRsifFZesBm/HOIEWpkZF+z83s+2a22Mz+M6Z4g2gb16P/MWBtIHaZGv1cSL4q3DvbmtkMM4t7jcDWhACbyJ8BCjjJdDnhzbEzivYfThjsmf8XFxYWGN1yBNf6PrAPcJK7F78jodA4wiOJS4r/JyFMNd8Y+N8kvs0ypUZ6j1wAfBj4nLvfXOY6G0fn+mnMezK+Q/jh9tuhN1+GYSTf8wWEpWqOjznvF6Lt3TFlUwuOj6OfC41hJPdOC+Ft53E9vPnHUon8GaAxOMn0c8KaMeeZ2eaE12pvQxj0+yhwXkHdXsLr9ldM1zWz/XjneesO+a2Z5Z+B59x9XvSI4ttAH/C8mR0S05al7n6zu//NzH5AeFHYn8zsSsIz212BowhTEE8a2ceWIRj2PWJmHyQMHO4BxpX4vufcfZ6732tmVxHem3OHmV1PeGncPsAh0bXOrvqnkzgj+blwI/A74AAzmwd0EWbP7EEIOC8WHZ+XnyH3dFyD9HOhYYzk3ukivD7iS9FsqZsIwfbThLE3txEmGySO1qJKqOgRwunAwYSF0foI0/JOc/f+gnqDgLt7YcB5mvKLI85z92k2xEX1onMfTPif4oOExU+fB/4X+KG7/6OyTyfVMNx7xMyOJAwkL2eeu0+L6o8jBJx2wg+9dxGe68/6/+3dvcscZRTG4Z+IEJCAFlqkUpun9vUV8U+wMGBn5UeKCLZ+1FGs0tloKShYKiKohb0IEpU0maiNhYWFImhpsJgp1SZrNj5zXc2zTHVgl+HeszvnVJe3gZHcAjd5X7iz9T18pnUcwF2tg/s+rd74u31RY4yPqvPV+Lfpxe4Lt7+b/OycaZ1ifaF1Xs6N6nrr2IA3b9cOnYADAEzHf3AAgOkIOADAdAQcAGA6Ag4AMB0BBwCYjoADAExHwAEApiPgAADTEXAAgOnYRQXs2hjjnuqX6sI/bVUH/n90cIC9O23div7lsQsBDkfAAfbu0dYN2NeOXQhwOJZtAruzbdZ+ubpYPdD6Ze/n6q1lWV47YmnAgejgAHv0bvVKdbn6rXq/+ri6NMZ47oh1AQci4AC7MsZ4vnq6erL6oLq3Ndy8UP1aPXW86oBDEXCAvXmx+mRZli+qk+3a18uy/Fn9WN19tMqAc6TckAAAAN9JREFUgxFwgN0YY5xrfWrqs+3Sw9Xv1XdjjDuqc9UPRyoPOCABB9iTh7bzp+08qb5dluVG9Uh1X/XhMQoDDkvAAfbkj+18cDtPqivb69er69Xnt7oo4PA8Jg7sxvZ4+LXqbPVS9V71dnV/9UT1+LIsV49XIXAoOjjAbmx/JD5ffV+90zrB+NnqTPWYcAPz0MEBdmmM8Wp1qTq7BR9gIjo4wF6dVt8INzAnAQfYq9Pqq2MXAfw3/EQFAExHBwcAmI6AAwBMR8ABAKYj4AAA0xFwAIDpCDgAwHQEHABgOn8Bodno+mcHbsAAAAAASUVORK5CYII=\n",
            "text/plain": [
              "\u003cFigure size 576x432 with 1 Axes\u003e"
            ]
          },
          "metadata": {
            "needs_background": "light",
            "tags": []
          },
          "output_type": "display_data"
        }
      ],
      "source": [
        "make_diff_plot(all_errs_svd, all_errs_gs, sigmas, title='Uniform Noise', ytitle='Frobenius Error Diff', xtitle='$\\\\phi$')\n",
        "make_diff_plot(all_geo_errs_svd, all_geo_errs_gs, sigmas, title='Uniform Noise', ytitle='Geodesic Error Diff', xtitle='$\\\\phi$')"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "cJaQpkZIbk6E"
      },
      "source": [
        "#Rotation Noise"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": null,
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "--SAWdQvbmkD",
        "outputId": "0e029240-09fb-4d39-b71c-149835590478"
      },
      "outputs": [
        {
          "name": "stderr",
          "output_type": "stream",
          "text": [
            "/usr/local/lib/python3.6/dist-packages/ipykernel_launcher.py:9: DeprecationWarning: `as_dcm` is deprecated!\n",
            "as_dcm is renamed to as_matrix in scipy 1.4.0 and will be removed in scipy 1.6.0\n",
            "  if __name__ == '__main__':\n",
            "/usr/local/lib/python3.6/dist-packages/ipykernel_launcher.py:30: DeprecationWarning: `as_dcm` is deprecated!\n",
            "as_dcm is renamed to as_matrix in scipy 1.4.0 and will be removed in scipy 1.6.0\n"
          ]
        },
        {
          "name": "stdout",
          "output_type": "stream",
          "text": [
            "finished sigma = 0.125000 / kappa = 448.000000\n",
            "finished sigma = 0.250000 / kappa = 320.000000\n",
            "finished sigma = 0.375000 / kappa = 192.000000\n",
            "finished sigma = 0.500000 / kappa = 64.000000\n"
          ]
        }
      ],
      "source": [
        "(all_errs_svd, all_errs_gs,\n",
        " all_geo_errs_svd, all_geo_errs_gs,\n",
        " all_noise_norms, all_noise_sq_norms\n",
        " ) = run_expt(sigmas, num_trials, noise_type='rotation')"
      ]
    },
    {
      "cell_type": "code",
      "execution_count": null,
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 865
        },
        "id": "4HzI_hdMcItu",
        "outputId": "fe68500b-51fc-4151-a928-dc7bd5bda268"
      },
      "outputs": [
        {
          "data": {
            "image/png": "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\n",
            "text/plain": [
              "\u003cFigure size 576x432 with 1 Axes\u003e"
            ]
          },
          "metadata": {
            "needs_background": "light",
            "tags": []
          },
          "output_type": "display_data"
        },
        {
          "data": {
            "image/png": "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\n",
            "text/plain": [
              "\u003cFigure size 576x432 with 1 Axes\u003e"
            ]
          },
          "metadata": {
            "needs_background": "light",
            "tags": []
          },
          "output_type": "display_data"
        }
      ],
      "source": [
        "make_diff_plot(all_errs_svd, all_errs_gs, sigma_to_kappa(sigmas), title='Rotation Noise', ytitle='Frobenius Error Diff', xtitle='$\\\\kappa$')\n",
        "make_diff_plot(all_geo_errs_svd, all_geo_errs_gs, sigma_to_kappa(sigmas), title='Rotation Noise', ytitle='Geodesic Error Diff', xtitle='$\\\\kappa$')"
      ]
    }
  ],
  "metadata": {
    "colab": {
      "collapsed_sections": [],
      "name": "svd_vs_gs_simulations.ipynb",
      "provenance": [
        {
          "file_id": "16qiSYBMZO3hl_YbTrtJbrXj-9HRfoyVg",
          "timestamp": 1605207505755
        }
      ]
    },
    "kernelspec": {
      "display_name": "Python 3",
      "name": "python3"
    }
  },
  "nbformat": 4,
  "nbformat_minor": 0
}
